数据结构与算法
yingge2016
这个作者很懒,什么都没留下…
展开
-
彻底理解链表中为何使用二级指针或者一级指针的引用
转载:http://blog.csdn.net/u012434102/article/details/44886339在用c/c++写数据结构程序时,链表和二叉树中经常需要用到二级指针或者一级指针的引用,那么什么时候用什么时候不用呢? 先看一个简单的c++链表操作程序: #include "stdio.h" #include "stdlib.h" #inc转载 2018-01-22 15:35:46 · 435 阅读 · 1 评论 -
将二叉树转化成线索二叉树
#include int g_index=0;int g_count=0;typedef char DataType;typedef enum{Link,Thread}PointerTag;typedef struct BiThrNode{ DataType data; struct BiTLNode *LChild,*RChild; PointerTag原创 2017-11-14 21:09:26 · 1447 阅读 · 0 评论 -
线性表总结
线性表实现顺序存储结构链式存储-单链表链式存储-静态链表线性表的顺序存储结构,添加和删除都需要移动其他的数据,相对较麻烦。但是顺序存储结构,对其中的数据进行查询时比较快速。对于二者比较线性表之顺序表与单链表的区别及优缺点http://blog.csdn.net/ljx_5489464/article/details/509转载 2017-11-17 20:40:23 · 206 阅读 · 0 评论 -
排序_插入排序
假定n是数组的长度, 首先假设第一个元素被放置在正确的位置上,这样仅需从1-n-1范围内对剩余元素进行排序。对于每次遍历,从0-i-1范围内的元素已经被排好序.每次遍历的任务是:通过扫描前面已排序的子列表,将位置i处的元素定位到从0到i的子列表之内的正确的位置上。将arr[i]复制为一个名为target的临时元素。 向下扫描列表,较这个目标值target与arr[i转载 2017-11-07 20:19:32 · 161 阅读 · 0 评论 -
二叉树创建、遍历、深度、销毁
#include "stdio.h"#include "stdlib.h"typedef char DataType;DataType dataArray[20]={'A','B',' ','C',' ',' ','D','E',' ',' ',' '};typedef struct Node{ DataType data; struct Node *LChild,原创 2017-11-14 18:12:14 · 594 阅读 · 1 评论 -
数据结构与算法视频推荐
数据结构与算法视频推荐https://www.bilibili.com/video/av2975983/index_1.html#page=1原创 2017-11-07 23:43:52 · 13631 阅读 · 5 评论 -
数据结构与算法面试小总结
数据结构部分:1、数组和链表的区别。(很简单,但是很常考,记得要回答全面)C++语言中可以用数组处理一组数据类型相同的数据,但不允许动态定义数组的大小,即在使用数组之前必须确定数组的大小。而在实际应用中,用户使用数组之前无法确定数组的大小,只能够将数组定义成足够大小,这样数组的空间可能不被使用,从而造成内存空间的浪费。链表是一种常见的数据组织形式,他采用动态分配内存的形式实现。需要时可以用转载 2017-11-07 23:41:45 · 227 阅读 · 0 评论 -
《大话数据结构》程杰_原书冒泡排序p383错误
正确描述为:“若flag为FALSE则退出循环”原创 2017-11-07 16:50:04 · 619 阅读 · 1 评论 -
《大话数据结构》二叉排序树代码错误
《大话数据结构》二叉排序树,删除某结点的函数/* 从二叉排序树中删除结点p,并重接它的左或右子树。 */Status Delete(BiTree *p){ BiTree q,s; if((*p)->rchild==NULL) /* 右子树空则只需重接它的左子树(待删结点是叶子也走此分支) */ { q=*p; *p=(*p)->lchild; free(q); } e原创 2018-01-24 22:36:59 · 892 阅读 · 1 评论