基础原理-数据结构
数据结构相关
Suzuki Mirai
百度一下,你就知道。
展开
-
PAT基础编程题目集(完)----函数题
这里面很多题都非常简单非常基础,算法不止一个,这种基础题不用要求太严格,能过就行。//数字 乘以 数组保存的数字 的方法。int Special_Multiplication(int num[], int top, int x) { int flag = 0; for (int i = 0; i <= top; i++) { int tem = num[i] * x + fla...原创 2019-04-25 12:07:06 · 510 阅读 · 0 评论 -
PAT基础编程题目集----4
大家有什么疑问可以在评论区评论,一起交流进步啊o(∩_∩)o字符串循环左移import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); String stri...原创 2019-04-05 16:17:33 · 163 阅读 · 0 评论 -
PAT基础编程题目集----3
大家有什么疑问可以在评论区评论,一起交流进步啊o(∩_∩)o求特殊方程的正整数解import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int n...原创 2019-03-31 16:52:09 · 224 阅读 · 0 评论 -
PAT基础编程题目集----2
大家有什么疑问可以在评论区评论,一起交流进步啊o(∩_∩)o分段计算居民水费import java.util.Scanner;public class Main { public static void main(String[] args){ Scanner scan = new Scanner(System.in); double s ...原创 2018-09-04 10:50:10 · 289 阅读 · 0 评论 -
PAT基础编程题目集----1
厘米转换英尺英寸import java.util.Scanner;public class Main { public static void main(String[] args) throws Exception { Scanner scan = new Scanner(System.in); int read = scan.nextInt()...原创 2018-08-29 17:47:11 · 920 阅读 · 0 评论 -
数据结构——第七讲、排序
简单排序1、冒泡排序void bulle_sort(ElementType A[], int N){ for(int p = N-1; p >= 0; p--){ int flag = 0; for(int i = 0; i < p; i++){ if(A[i] > A[i+1]){ swap(A[i], A[i+1]); int flag =...原创 2019-10-31 16:48:46 · 155 阅读 · 0 评论 -
数据结构——第四讲、树(二叉搜索树与平衡二叉树)
4.1 二叉搜索树操作集Position Find(ElementType x, BinTree T);Position FindMin(BinTree T);Position FindMax(BinTree T);BinTree Insert(ElementType x, BinTree T);BinTree Delete(ElementType x, BinTree T);查找Posit原创 2017-10-04 20:34:55 · 237 阅读 · 0 评论 -
数据结构——第六讲、图(图、图的遍历、最短路径、最小生成树和拓扑排序)
6.1 什么是图图是描述多对多关系的结构,图包含顶点和边,顶点用V(Vertex)表示,边用E(Edge)表示,双向边用(v,w)圆括号括住的顶点对表示,单向边用Graph Create();Graph InsertVertex(Graph G, Vertex V);Graph InsertEdge(Graph G, Edge E);void DFS(Graph G, Vertex V);原创 2017-10-10 22:04:36 · 341 阅读 · 0 评论 -
数据结构——第一讲、基本概念
1.1 什么是数据结构1、影响解决问题的方法和效率的因素:数据的组织方式空间的利用效率算法的巧妙程度例:给定一个N,输出从1到N的所有整数,用循环和递归分别实现。//循环void printN(int N){ for(int i = 1;i &lt;= N;i++) printf(&quot;%d\n&quot;,i);}//递归void printN(int N){ i原创 2017-09-24 19:39:26 · 331 阅读 · 0 评论 -
数据结构——第二讲、线性结构(线性表及其实现)
2.1 线性表及其实现2.1.1 多项式的表示一元多项式f(x)=a0+a1X+…+anX^n; 对它进行的操作有:相加、相减、相乘等,有多种方式表示。方法1:顺序存储结构直接表示 用一个数组存储多项式,数组的值为多项式的系数,数组的下标为多项式每项的指数。 (图片来源:中国大学MOOC浙江大学数据结构)显然,这样的方式虽然简单也便于运算,但是会造成数组空间的巨大浪费。原创 2017-09-26 06:58:53 · 464 阅读 · 0 评论 -
数据结构——第二讲、线性结构(堆栈和队列)
2.2 堆栈2.2.1 什么是堆栈原创 2017-09-28 17:41:56 · 556 阅读 · 0 评论 -
数据结构——第三讲、树(二叉树的表示和遍历)
3.1 树与树的表示什么是树:一种层次结构关系。静态顺序查找:把要查找的元素放在数组的0号位置作为哨兵,当循环退出时,根据返回的值是否为零来判断是否找到要查找的元素。二分查找:元素必须按顺序存储,每次都找中间即可。typedef struct LNode *List;struct LNode{ ElementType Data[MaxSize]; int len原创 2017-10-02 10:23:34 · 181 阅读 · 0 评论 -
数据结构——第五讲、树(堆、哈夫曼树和集合)
5.1 堆当需要存储一个不同优先级的优先队列时(删除都删除最大/最小值,插入任意元素),我们就要用到堆,当然,用数组,链表,或树都可以完成,但是算法复杂度不够理想。堆是一种特殊的树,它的任意节点都比它的左右儿子大/小,所以它的根节点是最大的/或者是最小的,删除的时候只需要删除最上面的根节点即可,插入时,为了使空间利用率最大,按照完全二叉树插入,这就是最大/小堆还记得刚开始说二叉树的时候,我们试过用数原创 2017-10-06 11:34:50 · 287 阅读 · 0 评论