07 2021 档案

摘要:1 #include<iostream> 2 3 using namespace std; 4 5 //栈的操作:初始化 push(插入) pop(弹栈,注意有的语言里的栈pop的时候会顺便返回top元素) top(看栈顶元素) 6 //用数组做栈,如果以起始位置作为栈顶的话,操作时候会引起大量数据 阅读全文
posted @ 2021-07-31 22:04 WriteOnce_layForever 阅读(68) 评论(0) 推荐(0)
摘要:1 *****查找与散列***** 2 常用查找:顺序查找、二分查找 3 查找树:<delete>BST</delete>(这玩意其实并不适合查找,因为可能会长斜了逐渐靠近一维) 4 AVL树、红黑树 5 外存查找:B+树 B树 6 查找树的效率一般能达到O(logN),以k为底,因为B树不一定是二 阅读全文
posted @ 2021-07-26 17:38 WriteOnce_layForever 阅读(61) 评论(0) 推荐(0)
摘要:1 *****不相交集*****(Disjoint Set) 2 先来看等价类: 3 4 5 不相交集也叫“并查集”,指的是这个集合更多的操作是并和查,不是集合叫并查集- - 6 集合,一般的集合,主要考虑集合有什么元素,根据集合查元素 7 不相交集,主要考虑,给定一个元素,去找这个元素在哪个集合. 阅读全文
posted @ 2021-07-26 14:47 WriteOnce_layForever 阅读(104) 评论(0) 推荐(0)
摘要:1 ********二叉树及其遍历********* 2 二叉树 3 树 每一个节点有多个节点 4 二叉树 每一个节点最多有两个节点 而且节点之间是有顺序的 5 下面来分辨几个二叉树 只是通常的定义 可能不同教材的定义不一样 6 7 满二叉树(Full Binary Tree) 8 要么没有儿子,要 阅读全文
posted @ 2021-07-25 09:53 WriteOnce_layForever 阅读(111) 评论(0) 推荐(0)
摘要:1 //链式队列 2 #include<iostream> 3 4 using namespace std; 5 6 struct Node{ 7 int data; 8 Node* next;//C++不用写struct Node *next,因为Node可以指代类型 9 //构造函数 10 No 阅读全文
posted @ 2021-07-23 15:06 WriteOnce_layForever 阅读(108) 评论(0) 推荐(0)
摘要:1 /*队列,在两端进行操作,入队enQueue,出队deQueue,查看队首元素front 2 有顺序队列和链式队列,顺序队列通常使用循环队列,为什么? 3 因为用数组实现队列的时候,当一个元素进行出队操作,该位置将不再能使用,会造成空间的浪费。 4 5 那么如何初始化循环队列,画图画一个圆形来分 阅读全文
posted @ 2021-07-22 17:06 WriteOnce_layForever 阅读(170) 评论(0) 推荐(0)
摘要:1 //当只需要做查找操作的时候 最好的是用顺序表O(1) 2 //经常需要做插入和删除的时候 用链表,当然如果这个位置在表末尾,用顺序表也行 3 //当经常删除和插入的位置在表头或者中间的时候,顺序表要挪很多次 4 //空间上:链表要比顺序表消耗大 因为多了指针域 5 /*C++中用stl lis 阅读全文
posted @ 2021-07-17 17:53 WriteOnce_layForever 阅读(93) 评论(0) 推荐(0)