随笔分类 - 数据结构
摘要:B+树的磁盘读写代价更低:B+树的内部节点并没有指向关键字具体信息的指针,因此其内部节点相对B树更小,如果把所有同一内部节点的关键字存放在同一盘块中,那么盘块所能容纳的关键字数量也越多,一次性读入内存的需要查找的关键字也就越多,相对IO读写次数就降低了。树的非叶子结点里面没有数据,这样索引比较小,可
阅读全文
摘要:##题意 中文题。 简单来说就是:把y串的开头串,放到x串最后一个元素的后面 注意是串,不是单个数字 ##注意 虽然样例给的是单个数字,但是题意说的是串,是串,是整个串进行移动! ##思路 一看就是链表合并,可是我的链表就是个渣渣,懂思路不会写,嘿,就是玩,我用数组写的。 官方题解说的就蛮好:每一次
阅读全文
摘要:##题目链接 https://leetcode-cn.com/problems/reverse-linked-list/ ##复杂度 时间复杂度:O(n) 空间复杂度:O(1) ##思路 见下面参考即可。可以用迭代法或者递归,上篇文章写的两种都有,本文只写递归解法。 ##注意 注意 . 和 → 的写
阅读全文
摘要:##题目链接 https://vjudge.net/problem/HihoCoder-1371 ##迭代法 #include<bits/stdc++.h> using namespace std; // 迭代法 struct node { int w; node *nex; node(int w)
阅读全文
摘要:P 是顶点 S 到 T 的最短路径,如果该图中的所有路径的权值都加 1,P 仍然是 S 到 T 的最短路径。(错) 如果最短路径有有2条边A->B->C,但是却存在另外一条边A->C,如果权值加一,A->C就可能会变成新的最短路径。 关于斐波那契数列时间和空间复杂度的分析:https://blog.
阅读全文
摘要:##题目链接 https://codeforces.com/contest/681/problem/C ##题意 给出T个操作,每次操作会给出如下内容: insert x:表示插入数字x到队列中。 removeMin:表示从队列中移除最小值 getMin x:表示从队列中需要获取一个最小值等于x。
阅读全文
摘要:##题面 以二叉链表作为二叉树的存储结构,交换二叉树中每个结点的左孩子和右孩子。 ##输入格式 输入二叉树的先序序列。 提示:一棵二叉树的先序序列是一个字符串,若字符是‘#’,表示该二叉树是空树,否则该字符是相应结点的数据元素。 ##输出格式 输出有两行: 第一行是原二叉树的中序遍历序列; 第二行是
阅读全文
摘要:##题面 实验三 哈夫曼树。实验目的及要求:1、要求学生掌握树和二叉树的基本概念;2、要求学生深刻理解二叉树的性质和存储结构,熟练掌握二叉树的遍历算法;3、认识哈夫曼树、哈夫曼编码的作用和意义;4、能够建立一个哈夫曼树,并输出哈夫曼编码,正确调试程序。本题要求实现一个创建哈夫曼树的函数,根据输入的n
阅读全文
摘要:PS:记得去年我都没有上过课,没事干复习一下第一章,仅此一章。 ##线性表 线性表的顺序表示:顺序表,只能一维。 线性表的链式表示:单链表,可以多维。 线性表:有限序列、表头表尾元素、九种操作。 ##数组静态分配 #define MaxSize 50 typedef struct { ElemTyp
阅读全文
摘要:队列 特点:先进先出 队列的图: 队列的基本操作: #include<stdio.h> #include<queue>//队列的头文件 using namespace std;//这个也一定要写 //需求:利用queue把1、2、3、4、5都入队,然后依次取出2 queue<int>Q;//设置一个
阅读全文
摘要:题目链接: POJ - 1521 题意:求哈夫曼树 输出哈夫曼树的顶点值ans(ans如果为0就输出字符串的长度len)、ans*8、len/ans 思路: 优先队列即可 AC代码: #include<stdio.h> #include<iostream> #include<string.h> #i
阅读全文
摘要:题面: 读入一个只包含 +, -, *, / 的非负整数计算表达式,计算该表达式的值。 Input 测试输入包含若干测试用例,每个测试用例占一行,每行不超过200个字符,整数和运算符之间用一个空格分隔。没有非法表达式。当一行中只有0时输入结束,相应的结果不要输出。 Output 对每个测试用例输出1
阅读全文
摘要:POJ - 3253 样例: Sample Input 3 8 5 8 Sample Output 34 题意:看下题目Hint部分就可以了 思路:每次取所有木板中最短的两块构成一块新木板(新木板的长度等于那两块的和),将此木板放回到原来所有木板中进行比较,再选出最短的两块来,以此类推,求拼接成一整
阅读全文
摘要:度度熊正在学习双端队列,他对其翻转和合并产生了很大的兴趣。 初始时有 NN 个空的双端队列(编号为 11 到 NN ),你要支持度度熊的 QQ 次操作。 ①11 uu ww valval 在编号为 uu 的队列里加入一个权值为 valval 的元素。(w=0w=0 表示加在最前面,w=1w=1 表示
阅读全文
摘要:题目描述 给定一个由括号组成的字符串 问其是否为一个合法的括号序列 合法的括号序列的定义如下 1. 空字符串是合法的括号序列 2. 若字符串A是合法的括号序列, 那么{A},[A],(A)也是合法的括号序列 3. 若字符串A,B是合法的括号序列, AB也是合法的括号序列 例如 {} ,[] , ({
阅读全文
摘要:In the new year party, everybody will get a "special present".Now it's your turn to get your special present, a lot of presents now putting on the des
阅读全文