红黑树:一种二叉查找树,但在每个结点上增加一个存储位表示结点的颜色,可以是red或Black。 通过对任何一条从根到叶子的路径上各个结点着色方式的限制,红黑树确保没有一条路径会比其他路径长处两倍,因而是接近平衡的。 二叉树的一般性质: 1.在一棵二叉查找树上,执行查找、插入、删除等操作的时间复杂度为 ...
分类:
其他好文 时间:
2018-08-21 16:04:26
阅读次数:
152
代码里面的一些 define先了解一下: 我用的书是严蔚敏的《数据结构(C语言版)》 紫色书。 书上的代码都很好理解,学习时候碰到过的小问题会总结提醒一下。 1. 函数会出现 类似于 void MergeList(List La,List Lb, List &Lc) 这样的函数定义,一开始我也是直接 ...
分类:
其他好文 时间:
2018-08-19 12:57:25
阅读次数:
159
转自:https://www.cnblogs.com/liuyam/p/6270062.html 列表是最常用的数据类型之一,通过列表可以对数据实现方便的存储,修改等操作。 先声明一个空列表: 可以存多个值: 如何取值: 如何修改: 增加: 插入: 删除: 第一种方法: 第二种方法: 查找: 统计某 ...
分类:
编程语言 时间:
2018-08-14 21:05:59
阅读次数:
154
在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5 利用递归的思想方便理解 ...
分类:
其他好文 时间:
2018-08-12 14:21:56
阅读次数:
148
元组不能直接插入删除修改元素。 逗号是关键 创建空元组 元组的一些操作符 别忘了逗号,"*"重复操作符也可以使用 元组通过切片间接更新 插入元素,可以使用拼接操作符(“+”) > < = ,and,or , in/not in等操作仍可以使用 ...
分类:
编程语言 时间:
2018-08-10 13:42:50
阅读次数:
131
// 面试题18(一):在O(1)时间删除链表结点 // 题目:给定单向链表的头指针和一个结点指针,定义一个函数在O(1)时间删除该 // 结点。链表结点与函数的定义如下: // struct ListNode{ // int m_nValue; // ListNode* m_pNext; // } ...
分类:
其他好文 时间:
2018-08-09 22:05:25
阅读次数:
94
复杂度分析 莫队算法如果我们已知[l,r]的答案,能在O(1)时间得到[l+1,r]的答案以及[l,r-1]的答案,即可使用莫队算法。时间复杂度为O(n^1.5)。如果只能在logn的时间移动区间, 则时间复杂度是O(n^1.5*log n)。其实就是找一个数据结构支持插入、删除时维护当前答案。 这 ...
分类:
其他好文 时间:
2018-08-09 21:16:44
阅读次数:
157
由于java中没有结构体,所以用一个类来定义链表,代码如下 主要包括一个data,还有一个指向后面一个节点的next 重写了toString函数,返回你想要的数据 定义链表的类: package LinkNode; public class LinkNode { public String data ...
分类:
编程语言 时间:
2018-08-08 23:41:29
阅读次数:
421
哈希表是一种重要的存储方式,也是一种常见的检索方法。其基本思想是将关系码的值作为自变量,通过一定的函数关系计算出对应的函数值,把这个数值解释为结点的存储地址,将结点存入计算得到存储地址所对应的存储单元。检索时采用检索关键码的方法。现在哈希表有一套完整的算法来进行插入、删除和解决冲突。在Java中哈希 ...
分类:
其他好文 时间:
2018-08-07 00:27:17
阅读次数:
126
mysql被oricle公司收购以后,PG就成了比较流行的开源数据库的首选,而且heroku上面不支持mysql,但是却大力支持PG,所以说,不得不学学PG,并非迫不得已的样子,至少以后PG会比较流行,学学固然是好的,自己学习的一点感想,供新手快速入门。 安装 你可以选择自行下载源码安装:http: ...
分类:
其他好文 时间:
2018-08-05 22:40:18
阅读次数:
370