数据结构
文章平均质量分 59
ykycode
安徽大学计算机学硕。
两次获得大学生数学竞赛省一等奖,且排名前列。
蓝桥杯C++组省一、国三。
毕业曾被国家电网录用,热爱代码的心让我选择了一家上市公司的C++开发岗。
后来又转行Java开发。
展开
-
【数据结构】线段树算法总结(区间修改)
【代码总结】线段树算法总结(区间修改)原创 2023-12-20 23:40:32 · 912 阅读 · 0 评论 -
【数据结构】线段树算法总结(单点修改)
【代码总结】线段树算法总结(单点修改)原创 2023-12-20 23:28:23 · 698 阅读 · 0 评论 -
【数据结构】树状数组算法总结
【代码总结】树状数组算法总结原创 2023-12-17 20:00:59 · 2758 阅读 · 6 评论 -
【数据结构】哈希表算法总结
【代码总结】哈希表,字符串哈希原创 2023-12-10 19:31:16 · 2299 阅读 · 10 评论 -
【数据结构】堆的应用(小根堆)
其中,down(x)表示在一个小根堆中,当一个数变大之后往下调整;up(x)表示在一个小根堆中,当一个数变小之后往上调整。1-3操作在C++的STL中的priority_queue中有实现,但是4、5需要间接实现,这是手写堆的一个好处,在Dijkstra(迪杰斯特拉)算法的堆优化中会有用到。一维数组用来存下来一棵树。在堆中,x的左儿子是2x,右儿子是2x + 1,1号点是根节点。堆用来维护一个数据集合。堆是一个二叉树,可以说是二叉树的一个应用,堆还是一个完全二叉树。原创 2023-12-10 13:31:39 · 529 阅读 · 0 评论 -
【数据结构】并查集算法总结
并查集的基本原理:每个集合用一棵树表示。树根的编号就是整个集合的编号。每个节点存储它的父节点。p[x]表示x的父节点。问题3:如何合并两个集合:px是x的集合编号,py是y的集合编号,则p[px] = py。问题2:如何求x的集合编号:while (p[x]!问题1:如何判断树根:if (p[x] == x)上面两个操作的时间复杂度近乎O(1)。2. 询问两个元素是否在一个集合当中。并查集中需要维护集合中点的数量。1. 将两个集合合并。原创 2023-12-07 23:26:25 · 928 阅读 · 4 评论 -
【数据结构】字典树(Trie树)算法总结
对于每个数,先插入,然后再找和这个数异或最大的数,找的方法是找已存储在字典树的数,从高位到低位,尽量找和当前数该位不同的数。最终得到的数即为所求。原创 2023-12-07 21:47:26 · 1019 阅读 · 0 评论 -
【数据结构】单调栈与单调队列算法总结
【代码】单调栈与单调队列算法总结。原创 2023-12-05 20:32:23 · 556 阅读 · 0 评论 -
【数据结构】栈和队列算法总结
【代码】栈和队列算法总结。原创 2023-12-03 18:01:09 · 567 阅读 · 4 评论 -
【数据结构】链表算法总结
【代码】链表算法总结。原创 2023-12-03 17:15:39 · 540 阅读 · 0 评论 -
PAT (Advanced Level) Practise 1004. Counting Leaves (30)
A family hierarchy is usually presented by a pedigree tree. Your job is to count those family members who have no child.InputEach input file contains one test case. Each case starts with原创 2017-12-13 09:27:54 · 140 阅读 · 0 评论 -
PAT (Advanced Level) Practise 1003. Emergency (25)
As an emergency rescue team leader of a city, you are given a special map of your country. The map shows several scattered cities connected by some roads. Amount of rescue teams in each city and the原创 2017-12-12 09:33:10 · 138 阅读 · 0 评论