数据结构与算法
python语言实现
曾经看网课的时候听到过这么一句话,不懂数据结构的只能建猪圈,懂了数据结构才能整高楼大厦,高楼大厦开整!!!
Clare°
呱呱呱?
展开
-
python语言实现双向链表
python语言实现双向链表 双向链表顾名思义,存在两个指针:头指针和尾指针,分别指向前驱节点和后续节点。 双向链表所包含的操作如下: is_empty() 链表为空 length() 链表长度 trvael() 便利链表 add(item) 头部添加元素 append(item) 尾部添加元素 insert(pos, item) 指定位置添加元素 remove(item) 删除节点 sear...原创 2019-12-26 09:44:46 · 497 阅读 · 0 评论 -
python语言实现冒泡排序、插入排序和选择排序
冒泡排序 冒泡排序是一种稳定的排序算法,及相同元素排序前后位置不发生调换,时间复杂度为O(n^2). 冒泡排序的核心思想如下: 依次比较相邻元素,若前者大于后者则交换位置后继续向后比较,若小于则直接继续向后比较 比如:对于ll=[8, 5, 4, 6] 1.第一轮比较,比较前ll=[8, 5, 4, 6] 首先比较8和5,8大于5,交换位置,继续向后比较;由于位置交换,比较8和4,8大于4,交...原创 2019-12-26 09:40:51 · 418 阅读 · 0 评论 -
python语言单向循环链表
单向循环链表 单向循环链表和单向链表的区别在于:尾结点不指向None,而是指向头结点。 单向循环链表所报含的操作和单向链表一致: is_empty() 链表是否为空 length() 链表长度 travel() 遍历链表 add(item) 链表头部添加元素 append(item) 链表尾部添加元素 insert(pos, item) 指定位置添加元素 remove(item) 删除指定节点...原创 2019-11-25 16:03:41 · 238 阅读 · 0 评论 -
python语言单链表实现
单链表 定义 链表是一种物理存储单元上非连续、非顺序的存储结构,元素的逻辑顺序通过节点中的链接指针来实现 链表的基本组成单元为节点,每个节点由两部分组成,分别为元素域和链接域,其中: 元素域用来存储具体数据。 链表域用来存放下一个节点的位置,即指向(可以理解为c++中的指针)。 头结点为链表开始的第一个节点。 尾结点为链表的最后一个节点,指向null。 优缺点 优点: 不需要连续的存储空...原创 2019-11-24 01:14:25 · 329 阅读 · 1 评论