摘要: 如果表够大,散列函数足够好,那么散列表在查找上具有O(1)的时间复杂度。但是我们考虑出现冲突的情况,如果使用分离链表法来处理冲突。那么链表的平均长度等于装填因子a(元素个数与散列表大小的比值)的大小。所以不成功查找的复杂度为a,成功查找的复杂度为1 + a/2。代码实现如下: 1 #include... 阅读全文
posted @ 2014-11-09 23:33 nipan 阅读(252) 评论(0) 推荐(0)
摘要: 重新实现了单链表,以指针而非哑节点的方式去指向第一个节点。代码如下: 1 /* 2 * 第二版链表实现 3 * 原先的实现,是以哑节点的方式来做链表的头部。 4 * 现在我们使用一个指针来做链表的头部,节约一个struct Node的空间 5 */ 6 7 #includ... 阅读全文
posted @ 2014-11-09 15:21 nipan 阅读(199) 评论(0) 推荐(0)