![](https://img-blog.csdnimg.cn/2019092715111047.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
考研-数据结构
考研-数据结构
sizaif
这个作者很懒,什么都没留下…
展开
-
循环右移K位问题的思考,几种方法的解决
循环右移K位问题目录循环右移K位问题试用顺序存储结构设计一个算法,仅用一个辅助结点,实现将线性表中的结点循环右移k位的运算,并分析,算法的时间复杂度.方法一: mod移位思想方法一plus:改进方法二:倒叙移位方法三:递归调用试用顺序存储结构设计一个算法,仅用一个辅助结点,实现将线性表中的结点循环右移k位的运算,并分析,算法的时间复杂度.方法一: mod移位思想 图一:/** * 思路: * 运用mod的思想, 将n复制成2n的数组 如图一所示; 那么循环有移 逃原创 2020-11-07 16:03:07 · 3285 阅读 · 0 评论 -
二叉树题目算法题目整理(附代码)
说明:由个人整理并运行成功,有错误之处欢迎指出by sizaif二叉树题目算法整理二叉树1) 采用下列方法之一建立二叉树的二叉链表:a) 输入完全二叉树的先序序列,用#代表虚结点(空指针),如ABD###CE##F##,建立二叉树的二叉链表。b) 已知二叉树的先序遍历序列和中序遍历序列。c) 已知二叉树的中序遍历序列和后序遍历序列,建立二叉树的二叉链表。d) 将一棵二叉树的所有结点存储在一维数组中,虚结点用#表示,利用二叉树的性质5,建立二叉树的二叉链表。例如用数组a存储的二叉树的结点如下(0.原创 2020-08-25 23:26:33 · 1586 阅读 · 1 评论 -
线性表(链表)题目算法题目整理(附代码)
说明:部分题目为王道题目整理,(ps.王道上思路没问题,在实现代码上略有些问题)因个人代码风格与王道略有不同,部分细节代码也不尽相同个人整理by sizaif链表题目算法整理链表:1) **输入一组整型元素序列,使用尾插法(头插法)建立一个带有头结点(不带头结点)的单链表**。**2) 在该单链表的第i个元素前插入一个整数。(从0开始)**3) 删除该单链表中的第i个元素,其值通过参数将其返回(从0开始)。4) 建立两个按值递增有序的带头结点的单链表,将他们合并成一个按值递减有序.原创 2020-08-24 22:46:45 · 1856 阅读 · 0 评论 -
中缀转后缀(逆波兰式求值)
(1) 0-2^32 位 之间 , 考虑数字大于10的情况.(2) C/C++实现(3) 中缀转后缀调用 栈stack(4) 后缀求值,用自己定义的栈求值思路:初始化两个栈:运算符栈s1和储存中间结果的栈s2; 从左至右扫描中缀表达式; 遇到操作数时,将其压s2; 遇到运算符时,比较其与s1栈顶运算符的优先级: 如果s1为空,或栈顶运算符为左...原创 2019-09-05 16:37:08 · 302 阅读 · 0 评论 -
数据结构之排序(Sort)
序言:内排序: 全部在内存里实现的成为内排序.外排序: 不仅需要内存还需要外存成为排序.五大分类: 插入排序,选择排序,交换排序,分配排序,归并排序;一: 插入排序1.1 直接插入排序:从小到大: 时间复杂度: O() 排序是稳定的.void DirectInsertionSort(int A[],int n){ for(int i = 1 ;i &l...原创 2019-09-07 11:40:25 · 375 阅读 · 0 评论