数据结构
神童i
百花发时我不发我若发时都吓杀
要与西风战一场遍身穿就黄金甲
展开
-
优雅地移除节点
先来看一个不优雅的写法:remove_list_entry(entry){ prev = NULL; walk = head; while (walk != entry) { prev = walk; walk = walk->next; } if (!prev) head = entry->...原创 2019-11-26 15:38:16 · 1313 阅读 · 0 评论 -
链表的“二分查找”--跳跃表
二分查找是一种效率很高的查找方法,但是二分查找要求数据结构必须是顺序表,也就是类似于数组的连续存储,因为只有这样才能一下定位出数组的中间位置(直接使用类似a[len / 2]),然后就可以把数组一分为二,进行后面的操作。但是对于链表,由于存储是离散的,不能像数组一样,快速定位中间位置,来把链表一分为二,所以一般的二分查找不能直接应用于链表。本文要说的跳跃表其实也可以算是一种新的数据结构,采用空...原创 2019-11-13 09:15:25 · 6396 阅读 · 0 评论