西厢月
2022-11-21
2022-12-1
2023-10-25
2023-10-26
2023-10-30
2023-11-7
2023-11-9
2023-11-17
2023-11-20
2023-11-21
2023-11-28
2023-11-30
2023-12-4
2023-12-7
2023-12-15
2023-12-25
2023-12-30
2024-1-3
2024-1-4
2024-1-10
2024-1-12
2024-1-26
2024-2-28
2024-3-2
2024-3-9
2024-3-13
2024-3-14
2024-3-19
2024-3-22
2024-3-24
2024-3-29
2024-4-1
2024-4-10
2024-4-16
2024-4-21
2024-4-27
2024-5-12
2024-5-17
2024-5-21
2024-5-31
2024-6-1
2024-6-4
2024-6-9
2024-6-13
2024-6-17
2024-6-20
2024-6-24
2024-6-27
2024-7-3
2024-7- ...
Lab4
题目要求验证好的散列函数能将关键字均匀地散布在0~M-1之间:
编写程序将《双城记》中的10000+个单词,散列到 0~M-1之间。
统计每个单词的散列值的出现频率,并按条形图的格式输出。
分别取不同的M,直观看看哪个M比较合适。例如, M 可以取97,997,1997等。
查找某单词是否在《双城记》中出现?随机查找100个单词,估算一次查找的平均比较次数。
实现的功能
将《双城记》中的10000+个单词,散列到 0~M-1之间,并统计每个单词的散列值的出现频率,按条形图的格式输出。
查找用户指定的单词是否在《双城记》中出现
一键导入用户给定文本中的单词,查询其中每个单词是否出现,并计算一次查找的平均比较次数
以上功能均可以自定义M的值以实现最佳效果
方法构造哈希函数使用BKDRHash
1234567unsigned int BKDRHash(const char *str, int M) { unsigned int hash = 0; while (*str) { hash = (hash * 131) + (*str++); ...
目前编程存在的问题
689011e36612bd0ddb82bd0e4ee6472f3faaa80f2379f9f1672814937e487d17b8c97a2509e481c43351c7a3acd57e67f6b4eaa4580c966dc5d3c68b3f0d0a51c1b7dbfc43d86416c38d98e26e5e6d873a74e30815bf5173cb48cb7e8136a318ac36ff9934280fa615a90567ef2c122a29cc6d1c30724686b38022b108671d7bd1c4f770e5921a95ca1a5e09ce5f184279fc2741aad0fa740e2dcdff89b0f93659259cd33c8e42d6a024c3fb61b3db14c67dc78d7f38a1a047a7d400c8b0f80d8c81838e728b335400752a7a6ee7b2ecaf0a842088b808d0733973f01ebbd5451f5fae3db70f3d28fb4f634d3ed7e8df260adbe13b17b2808 ...
多人合作
689011e36612bd0ddb82bd0e4ee6472fcec7f59b6573a87adc5ef0e49de5374f3104ae51495672713f5a0d026fbd5ad0a3d3f18c36117a841d290bc95a98c3a649288b9edd86cc86391fcd46b80d1e12a8e81926ba8d57aded54550ec2c9ca6a1e12f827ffdeb84b5d6bb66714a7efaf61119dc219c0d51e700702bda173fbedd2f46027089bfc62a159b475d3803c36004c25e26ab30ae4637602c6608718bfa050e591ad9308fada16338c190e5ba617bbd98e4476234606cb4d986d35b62dd5cfa971cc32dc3508321dd40ef4058f887c521c5f778b08640cd55e89d8cadf2cc6bc67bf325e50a527aeb8d9a7992eddc27fd66794bb0cd ...
十月关键词
689011e36612bd0ddb82bd0e4ee6472f40026e09dc3ee0edfaf659336a74bc4a5aaec2f651cbc029c254507972415c4230c5f801097994aae95a5da75cee110e048579afdecaec8acd2c7dd54991280237c5686ba7afe2c7af20bd73fee506fae5b1394b0bd6a1d016d8f0c46917cb7574ee93333de3195f0057918a3f91e57cf3ed6e3e1edc03161942c6af429cdde66128deca6c4f6820bc16df8b967e78c5e4e1a64a282a8ae81c46834a0441b5cf34bbdf88e7a7e7f930eb47ef85a81b32bcec0ce35bee2cfd91824773e484c694f362506a11f61bb7acf1cae42fe5ed791739fafca0017062839585e93740ba7ff3175a7c0dccd20d1 ...
网站的前世今生
689011e36612bd0ddb82bd0e4ee6472f40026e09dc3ee0edfaf659336a74bc4a4926efc675e288896b5dcf314e196f276db867e35bd7e726f68b95c440acf7b3b347cb4e670d63514caf765955fb32e181c2fdb14a0ee58c5e05cca0c7e301e3c264f8073b4ec951d9cf49e71792bc606d49936a8157ca8dc3f7efba70af91b4382673e230aaec963ceb391539d05b4b34656017840b07e413e2ac6e9d90704603c386cdbfb69a61bebc0dda0b1adba7e5b59ea69c5f69863450abbf9f36965ac87c9fb5c9b1630b923e68e215ecab858faab1f40f7c42964379527521866f96fab893f3be72d37a325b405386c443143b08f8a42d0beb21f ...
感冒了
689011e36612bd0ddb82bd0e4ee6472fcec7f59b6573a87adc5ef0e49de5374f4bcef649c6d48d109824c205f85379e9843606d8b967b3f81b81a4057892bdc6
您好, 这里需要密码.
Blog大成功
今天研究了一天的Blog,真给我累的够呛。昨晚睡觉梦中全是#
到目前为止,完成了大部分的美化工作,恶补了n多前端的知识
剩下的就是布局和往里塞东西了
Lab3
功能渗透模型用Monto Carlo模拟法计算出概率阈值p,并用图形化显示形象展现这一结果
方法计算
使用加权快速联合算法(加权quick-union)快速判断两个节点是否连通
所用的函数:
void init()
int find(int p)
void weighted_QU(int p, int q)
bool isUnion(int p, int q)
构造渗透类(Percolation),建立n*n网格
使用并查集来维护每个格子的连通性。我们可以将每个格子看作一个节点,并将相邻的格子连接起来。如果一个格子与顶部相连,则它是满的。我们可以使用一个虚拟节点来表示顶部,将所有顶部的节点连接到这个虚拟节点上。如果虚拟节点与底部相连,则整个系统渗透。
所用的函数:
void open(int row, int col)
bool isOpen(int row, int col)
bool isFull(int row, int col)
int numberOfOpenSites()
bool percolates()
开始模拟,随机打开格子,直到渗透为止,则此时打开的 ...
缓缓推进
689011e36612bd0ddb82bd0e4ee6472fcec7f59b6573a87adc5ef0e49de5374fa4ac77c578eddaaafe1e3866df7b408f61813dae7305c225e4a08c0c819582db4ae38180d5f760c26c3eb532c7ef847b08e2a49e51bd2df7d5058cb5f3e3d190b5b1c8c24e270cfe229010c51de6fa4d
您好, 这里需要密码.