E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
数据结构复习
数据结构复习
笔记 - 如何实现一个通用的、高性能的排序函数?
排序复杂度.jpg我们前面讲过,线性排序算法的时间复杂度比较低,适用场景比较特殊。所以如果要写一个通用的排序函数,不能选择线性排序算法。如果对小规模数据进行排序,可以选择时间复杂度是O(n2)的算法;如果对大规模数据进行排序,时间复杂度是O(nlogn)的算法更加高效。所以,为了兼顾任意规模数据的排序,一般都会首选时间复杂度是O(nlogn)的排序算法来实现排序函数。时间复杂度是O(nlogn)的
ElegantLiar
·
2020-02-02 07:35
数据结构复习
笔记 - 排序(下)
归并排序和快速排序时间复杂度为O(nlogn)归并排序归并排序使用的就是分治思想。分治,顾名思义,就是分而治之,将一个大问题分解成小的子问题来解决。小的子问题解决了,大问题也就解决了。分治算法一般都是用递归来实现的。分治是一种解决问题的处理思想,递归是一种编程技巧,这两者并不冲突。递推公式:merge_sort(p…r)=merge(merge_sort(p…q),merge_sort(q+1…r
ElegantLiar
·
2020-02-02 04:32
数据结构复习
笔记 - 递归
递归需要满足的三个条件一个问题的解可以分解为几个子问题的解这个问题与分解之后的子问题,除了数据规模不同,求解思路完全一样存在递归终止条件如何编写递归代码?写递归代码的关键就是找到如何将大问题分解为小问题的规律,并且基于此写出递推公式,然后再推敲终止条件,最后将递推公式和终止条件翻译成代码编写递归代码的关键是,只要遇到递归,我们就把它抽象成一个递推公式,不用想一层层的调用关系,不要试图用人脑去分解递
ElegantLiar
·
2020-02-01 23:31
数据结构复习
笔记 - 栈
如何理解“栈”?关于“栈”-模型堆盘子后进者先出,先进者后出,这就是典型的“栈”结构栈是一种“操作受限”的线性表数组或链表暴露了太多的操作接口,操作上的确灵活自由,但使用时就比较不可控,自然也就更容易出错当某个数据集合只涉及在一端插入和删除数据,并且满足后进先出、先进后出的特性,我们就应该首选“栈”这种数据结构空间复杂度是O(1)时间复杂度是O(1)如何实现一个“栈”?用数组实现的栈,我们叫作顺序
ElegantLiar
·
2020-02-01 22:05
数据结构复习
笔记 - 链表(上)
数组与链表数组数组需要一块连续的内存空间来存储,对内存的要求比较高。链表通过“指针”将一组零散的内存块串联起来使用。单链表、双向链表和循环链表。记录下个结点地址的指针叫作后继指针next。把第一个结点叫作头结点,把最后一个结点叫作尾结点。指针不是指向下一个结点,而是指向一个空地址NULL,表示这是链表上最后一个结点。循环链表是一种特殊的单链表。双向链表需要额外的两个空间来存储后继结点和前驱结点的地
ElegantLiar
·
2020-02-01 15:58
数据结构复习
笔记 - 随机访问、大多数编程语言中,数组要从 0 开始编号,而不是从 1 开始
如何实现随机访问?线性表。顾名思义,线性表就是数据排成像一条线一样的结构。每个线性表上的数据最多只有前和后两个方向。其实除了数组,链表、队列、栈等也是线性表结构。非线性表。比如二叉树、堆、图等。之所以叫非线性,是因为,在非线性表中,数据之间并不是简单的前后关系。连续的内存空间和相同类型的数据。正是因为这两个限制,它才有了一个堪称“杀手锏”的特性:“随机访问”。但有利就有弊,这两个限制也让数组的很多
ElegantLiar
·
2020-02-01 13:34
数据结构之简单实现栈
数据结构复习
之栈的线式存储创建栈数据结构初始化栈判断栈是空是满入栈和出栈复位栈和删除栈关于栈的简单实用测试案例打印测试结果!
范卫华Qter
·
2020-01-15 11:28
c++复习总结
数据结构
数据结构复习
(一)
一、数据结构与算法时间复杂度O(n)空间复杂度二、顺序表及其应用:顺序查找算法:从顺序表的一端开始顺序扫描,将给定的k值一次与顺序表中各元素的关键字比较intSeqSearch(ListL,KeyTypek){//在顺序表L中顺序查找其关键字等于k的元素,若找到返回该元素的位置,否则为0L.r[0].key=k;//0号单元做为监视哨inti=L.lengrh;while(L.r[i].key!=
凤7
·
2020-01-06 21:00
数据结构复习
纲要
因为之前就复习完数据结构了,所以为了保持记忆,整理了一份复习纲要,复习的时候可以看着纲要想具体内容。树树的基本概念树是递归的定义有序树(如二叉树)树的高度(叶结点高度为1)树的性质(王道补充)高度为h的m叉树至多结点数:(m^h-1)/(m-1),等比数列求和公式具有n个结点的m叉树的最小高度:↑logm(n(m-1)+1)↑(↑↑为向上取整)含有n个结点的m叉树的最小高度和最大高度,通过不等式,
牛富贵儿
·
2019-12-29 20:26
数据结构复习
——二叉堆
A*寻路算法中的优化,取最小F值的时候特别时候使用最小堆二叉树特点:是一颗完全二叉树;父节点要小于等于或者大于等于子节点。其结构非常适合用数组描述。假设头结点为array[1]的二叉堆,则索引为i的节点,其父节点索引为i/2,其左子树索引12,右子树为i2+1。移除堆顶的时候,将堆顶替换为末尾数据,size--,然后向下调整,若比子节点的大则互换,一直到没有互换或者成为叶子节点为止。添加元素,在数
走过路过_97c2
·
2019-10-31 17:45
【
数据结构复习
】链表的倒置(头插法倒置)
#includeusingnamespacestd;typedefintElemType;structLNode{ElemTypedata;LNode*next;};LNode*head,*tail;voidinit(){head=(LNode*)malloc(sizeof(LNode));head->next=NULL;tail=head;}voidinput_data(){intx;cin>>
AWCXV
·
2019-09-22 18:00
【
数据结构复习
】输入一个链表,然后输出它
输入数字,-1结束就好要记住在新申请节点的时候,这样写LNode*temp=(Lnode*)malloc(sizeof(LNode));即指向LNode的一个指针。因为malloc返回的就是一个指针。#includeusingnamespacestd;typedefintElemType;structLNode{ElemTypedata;LNode*next;};LNode*head,*tail;
AWCXV
·
2019-09-22 15:00
用Go实现的冒泡排序算法——几种不同形式的冒泡
冒泡排序一直都是基础排序算法之一,在学习Go语言的时候,顺便把
数据结构复习
一下。
hp_cpp
·
2019-09-13 16:02
Go学习之路
数据结构与算法
数据结构复习
笔记(五)——树
一、树的定义树的定义二、树的抽象数据类型树的抽象数据类型三、树的存储结构双亲表示法#defineMAX_TREE_SIZE100typedefintTElemType;typedefstructPTNode{TElemTypedata;//结点数据intparent;//双亲位置}PTNode;typedefstruct{PTNodenodes[MAX_TREE_SIZE];//结点数组intr,
L先生_c77f
·
2019-08-25 09:06
数据结构复习
笔记(三)——栈和队列之队列
队列的线性存储之循环队列voidSqQuene::InitQuene(sqQuene&s){s.front=0;s.rear=0;}intSqQuene::QueneLength(sqQuenes){intlenght=(s.rear-s.front+MAXSIZE)%MAXSIZE;returnlenght;}sqQueneSqQuene::EnQuene(sqQuene*s,QElemType
L先生_c77f
·
2019-08-23 19:38
数据结构复习
笔记(三)——栈和队列之栈
栈的定义仅在表尾进行插入删除操作的线性表栈的抽象数据类型栈的抽象数据类型栈的线性存储结构usingnamespacestd;typedefintSElemType;#defineINIT_SIZE10typedefstruct{SElemType*base;//栈底指针,在栈构造之前和之后销毁,base值为NULLSElemType*top;//栈顶指针intstacksize;}SqStack;
L先生_c77f
·
2019-08-23 19:28
数据结构复习
笔记(二)——线性表的链式存储结构之循环链表
循环链表单链表终端结点的指针指向头节点空表非空循环链表循环链表的创建参考https://blog.csdn.net/qq_29542611/article/details/79029540typedefstructCLinkNode{Elemtypedata;structCLinkNode*next;}CLinkNode,*CLinkList;voidIniteCLinkList(CLinkLis
L先生_c77f
·
2019-08-23 19:21
数据结构复习
笔记(一)——基本概念
术语数据数据元素数据项数据对象数据结构结构逻辑结构集合线性结构树形结构图行结构物理结构顺序存储结构:地址是连续的,逻辑关系和物理关系是一致的链式存储结构:把数据存放在任意存储单元里,可以是连续的也可以是不连续的算法的时间复杂度T(n)=O(f(n))随问题规模的增大,算法执行时间增长率和f(n)的执行增长率相同n:算法的问题规模o推倒加法常数:O(1)只保留最高阶项去除最高阶的常数常见的时间复杂度
L先生_c77f
·
2019-08-23 19:46
数据结构复习
之 单链表C++(未测试
使用两个类来分别构建节点对象和链表对象,节点对象中有两个元素,数据域保存当前节点的值,指针域指向下一个节点,由于一个节点之间是通过指针相连的,因而可以不使用连续内存,同时也导致了不能随机访问的问题,如果我们要访问链表中某一个节点,只能通过从头节点开始遍历,所以我们通常只需要一个头指针就可以标识一个链表。通常可以在第一个结点之前加入一个头节点,指向第一个节点,数据域可以不存放内容,也可以存放链表长度
LieberVater
·
2019-07-28 16:46
考研复习-数据结构
考研
数据结构复习
随笔-基本概念(一)
数据结构是对于计算机专业的一门非常重要的专业课。今天我们首先了解一些数据结构的一些基本概念。1.数据:数据是对于一切客观事物的符号表示,能够输入到计算机中,并且能被计算机识别并处理的符号的总称。2数据元素:是数据的基本单位,在计算机中通常作为一个整体进行处理和考虑。3数据项:数据的不可分割的最小单位。4数据对象:性质相同的数据元素的集合。它是数据的一个子集。5数据结构:是相互之间存在一种或者多种特
DennySmith
·
2019-07-14 23:00
数据结构复习
之 顺序表的C++实现
这部分学的时候由于自己刚转专业确实也没什么编程基础几个实验做起来也是稀里糊涂虽然原理课上都听懂了具体实现的时候还是一脸懵所以正好自己复习数据结构就来再实现一遍这次先实现顺序表,实现的具体功能包括:头插头删插入具体位置删除具体位置元素输出所有元素按值搜索按位置搜索由于之前做的就是基于模板来实现的这里也这样实现实话实说现在看来当时学的东西真的没有那么难代码具体实现#includeusingnamesp
LieberVater
·
2019-07-14 20:06
考研复习-数据结构
数据结构复习
之 算法分析
这部分主要目的是对于时间空间复杂度、算法评价标准有一个了解,以便于在后面的学习中可以对各种数据结构的效率有一个客观的评价标准对比起来也更容易一、算法代价代价可以分为两种时间代价和空间代价时间代价主要是指算法执行过程中所需的时间空间代价指算法所需要的存储器资源对于一个算法的评价应该可以客观地展现算法本身的效率而与算法执行的硬件条件、软件环境无关对于算法的评价可以有最差、最好、平均三种角度来分析比较算
LieberVater
·
2019-07-06 16:26
考研复习-数据结构
数据结构复习
数据结构定义描述数据之间一种或多种特定关系的元素的集合。数据结构分类数据结构分别为逻辑结构、存储结构(物理结构)和数据的运算逻辑结构:根据数据元素间关系的不同特性,通常有下列四类基本的结构集合结构。该结构的数据元素间的关系是“属于同一个集合”Java中的Map接口的实现类HashMap、HashTable等线性结构:数据元素之间存在着一对一的关系如ArrayList、LinkedList树形结构:
路漫-其修远兮
·
2019-06-12 10:39
Java
数据结构
408
数据结构复习
笔记
第一章:绪论关系:数据>数据元素>数据项数据对象:性质相同的数据元素集合数据结构:有特定关系的数据元素的集合逻辑结构:线性与非线性物理结构:顺序存储,链式存储,索引存储,散列存储算法性质:有穷性,确定性,输入,输出可行性算法设计:正确,可读,健壮,高效低空间第二章:线性表(注意两种表的增删改查写法)顺序表:静态分配,存储密度=1,随机存取,插入/删除时平均移动一半元素链表:动态分配,存储密度0)结
_Jim_
·
2019-06-08 00:44
考研计机
数据结构复习
:线性表及其实现
一、概念1、线性结构是数据结构里最基础也是最简单的一种数据结构类型,其中典型的一种叫“线性表”。2、“线性表(LinearList)”:由同类型数据元素构成有序序列的线性结构表中元素个数称为线性表的长度线性表没有元素时,称为空表表起始位置称表头,表结束位置称表尾3、线性表的抽象数据类型描述:类型名称:线性表(List)数据对象集:线性表是n(>=0)个元素构成的有序序列(a1,a2,····,an
CrownP
·
2019-03-13 16:07
数据结构和算法
数据结构复习
大纲
前言:1976年,一个瑞士计算机科学家写一本书《Algorithms+DataStructures=Programs》。即:算法+数据结构=程序。40多年过去了,这个等式依然成立。数据是程序的核心要素,因此数据结构的价值不言而喻。无论你在写什么程序,你都需要与数据打交道,比如员工工资、股票价格、杂货清单或者电话本。在不同场景下,数据需要以特定的方式存储,我们有不同的数据结构可以满足我们的需求。不管
csdn2497242041
·
2019-01-04 22:20
数据结构与算法
数据结构复习
大纲
前言:1976年,一个瑞士计算机科学家写一本书《Algorithms+DataStructures=Programs》。即:算法+数据结构=程序。40多年过去了,这个等式依然成立。数据是程序的核心要素,因此数据结构的价值不言而喻。无论你在写什么程序,你都需要与数据打交道,比如员工工资、股票价格、杂货清单或者电话本。在不同场景下,数据需要以特定的方式存储,我们有不同的数据结构可以满足我们的需求。不管
csdn2497242041
·
2019-01-04 22:20
数据结构与算法
数据结构复习
之【图】
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!一、基本术语图:由有穷、非空点集和边集合组成,简写成G(V,E);Vertex:图中的顶点;无向图:图中每条边都没有方向;有向图:图中每条边都有方向;无向边:边是没有方向的,写为(a,b)有向边:边是有方向的,写
很美的海边
·
2018-11-13 12:58
数据结构复习
小结4(排序)
插入排序基本思想:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子序列中,直到插入完成。----直接插入排序在有序子列里找到第i个的位置k,将L[k.....i-1]中元素向后移动一个位置voidInsertSort(ElemTypeA[],intn){inti,j;for(i=2;i=1;dk=dk/2)for(i=dk+1;i0&&A[0]i;j--){if(A[j-1].A[j
dingdongsnow
·
2018-11-09 10:52
数据结构复习
小结3
查找定义:在数据集合中寻找满足条件的数据元素的过程为查找。1.查找某个特定的数据元素是否咋查找表中2.检索满足条件的某个特定的数据元素的各种属性3.在查找表中插入一个数据元素4.从查找表中删除某个特定元素静态查找表:涉及步骤1.2动态查找表:涉及插入或删除的查找关键字:在数据元素中唯一标识该元素的某个数据项的值平均查找长度:查找过程中,一次查找的长度是指需要比较的关键字次数,平均查找长度是所有查找
dingdongsnow
·
2018-11-06 17:26
数据结构复习
小记2
树与二叉树的应用二叉树排序树(BST)查找树若左子树非空,则左子树上所有结点关键字值均小于根结点的关键字值。若右子树非空,则右子树上所有结点关键字值均大于根结点的关键字值。平衡二叉树:左右子树都是平衡二叉树,高度差绝对值不超过1;哈夫曼树:结点为权,从树根结点到任意结点的路径长度(经过的变数)与该结点s哈夫曼树:结点成为权,从根结点到任意结点的路径长度(经过的边数)与该结点上权值的乘积成为该结点的
dingdongsnow
·
2018-11-01 11:59
数据结构复习
(二)链表的定义和操作
#includeusingnamespacestd;typedefstructNode{intdata;Node*next;}Node,*LinkList;LinkListInitList(){LinkListL=newNode;L->next=NULL;returnL;}boolInsertToList(LinkList&L,intvalue){Node*p=newNode;p->data=va
偷亲
·
2018-10-07 00:06
数据结构
数据结构复习
(一)顺序表的基本操作
#include#include//C语言头文件#include//malloc头文件usingnamespacestd;typedefstruct{int*data;intlength,MaxSize;//length为当前元素数量,MaxSize为最大元素数量}SqList;voidInitList(SqList&L){L.length=0;L.MaxSize=10;L.data=(int*)
偷亲
·
2018-10-03 23:19
数据结构
数据结构复习
笔记(二)——单链表(C语言)
定义结构体 typedefstruct_node{ intdata; struct_node*next; }Node;单链表插入(尾插法) voidadd(Node*head,inti){ Node*p=(Node*)malloc(sizeof(Node));//创建新节点 p->data=i; p->next=NULL; Node*last=head;//尾指针始终指向当前链表的尾节点 whil
lazyyben
·
2018-09-24 00:00
【
数据结构复习
】408数据结构中线性表大题整理
(两个有序顺序表的中位数)一个长度为L(L≥1)的升序序列S,处在第[L/2]个位置的数称为S的中位数。例如列S1=(11,13,15,17,19),则S1中的中位数是15。两个序列的中位数是含它们所有元素的升序序列的中位数。例如,若92=(2,4,6,8,20),则.S1和S2的中位数是11。现有两个等长升序序列A和B,试设计一个在时间和空间两方面都尽可能高效的算法,找出两个序列A和B的中位数。
zhangzm0128
·
2018-09-13 15:14
考研
源码|jdk源码之Object及装箱类型分析
第一,是比较典型的但是不常用的数据结构,这部分我准备将
数据结构复习
、回顾后再继续阅读。第二,是并发相关的集合,这部分我准备留到和并发相关的类一起阅读。所以,今天就读些轻松的。
frapples
·
2018-09-12 00:00
jdk8
java
数据结构C++ 复旦大学
复旦大学视频教程是复旦大学计算机专业知名教授王宇君主讲的,内容具体详实,知识点全面,讲解生动细致,主要内容包括:数据结构概论、数组和广义表、串的操作与KMP算法、链表、栈和队列、树和二叉树、图、排序、散列和
数据结构复习
总结等
cpongo333
·
2018-09-01 17:08
数据结构复习
---排序(1)
选择类排序算法1、选择排序算法思想:首先找到数组中最小的那个元素,其次将它和数组中的第一个元素交换(如果第一个元素是最小的,那么和它自己进行交换)。再次,再剩下的元素中找到最小的元素,将它与数组中的第二个元素进行位置交换。如此往复,直到整个数组排序。这就叫选择排序。时间复杂度o(n*n)模板:publicclassExample{//选择排序算法publicstaticvoidselectSort
雪泪寒飞起来
·
2018-08-27 22:41
算法
数据结构复习
————递归与栈
递归的定义:若一个对象部分的包括它自己,或用它自己给自己定义,则称这个对象是递归的,递归也可定义为,在一个过程中直接或间接的调用自己,则这个过程也是递归的。能采用递归算法的问题的特征:当一个问题具有以下三个特征时,就可以用递归算法。1)大问题能分解成若干个子问;2)子问题或是一个定值(直接解),或是与大问题具有相同性质的问题仅仅是规模比大问题小,即被定义项在定义中应具有更小的尺度;3)子问题在最小
Vallenlover
·
2018-08-19 11:41
数据结构复习
数据结构复习
栈的顺序存储和链接存储
栈的定义栈是限定仅在表尾进行插入和删除操作的线性表,允许操作的一端称为栈顶,不进行操作的一端称为栈底,不含任何数据元素的栈称为空栈。栈具有“后进后出”的特性,就如同一叠盘子,要从这叠盘子中取出盘子或者放入一个盘子,只有在其顶部操作是最方便的。1.栈的顺序存储结构——顺序栈//栈的顺序存储templateclassSeqStack{public:SeqStack(){top=-1;//第一个元素入栈
好运的云
·
2018-07-15 12:13
数据结构
C++及
数据结构复习
笔记(十二)(栈与队列)
2.3栈与队列2.3.1栈的ADT接口栈stack是存放数据对象的一种特殊容器,其中的数据元素按线性逻辑次序排列,故可定义首末元素。尽管栈结构也支持对象的插入和删除,但其操作仅限于栈的某一特定端。即新的元素只能从一端插入,或者只能从这一端删除已有元素。栈中可操作的一端称为栈顶,而另一无法直接操作的盲端称为栈底。栈中元素接收操作的次序是先进后出的。栈所支持的操作接口如下:size()//报告栈的规模
Lao_tan
·
2018-07-12 23:47
C++数据结构
C++及
数据结构复习
笔记(十)(面试笔试考点)
1.13C++面试笔试中概念性问题考点1、结构体和共同体的区别:结构体和共同体都是由多个不同的数据类型成员组成,共同体中只存放了一个被选中的成员,而结构体的所有成员都存在。在结构体中,各成员都占有自己的内存空间,它们是同时存在的。一个结构体变量的总长度等于所有成员长度之和。在共同体中,所有成员不能同时占有它的内存空间,它们不能同时存在。共同体变量的长度等于最长成员的长度。对共同体不同成员赋值,将会
Lao_tan
·
2018-07-10 09:06
C++
数据结构复习
笔记
初识算法及相关概念算法解决特定问题的求解步骤及描述,在计算机中为指令的有限序列,每条指令表示一个或多个操作。算法特性有穷性、确定性、可行性、输入、输出算法设计要求正确性、可读性、健壮性、高效率和低存储量需求算法时间复杂度及大O阶推导大O阶推导:1.使用常数1代替运行时间中的所有常数加法2.修改后的运行次数函数中,只保留最高阶项3.如果最高阶项存在且系数不为1,去除该项的系数常见的时间复杂度耗时排列
zlei03
·
2018-06-18 22:12
数据结构复习
之顺序表以及链表的方式实现常用的几种排序算法
文章目录如何选择综述完整代码-顺序表版本堆排序(小顶堆增量求topk-海量数据排序)完整代码-链表版本冒泡排序快速排序插入排序直接插入排序希尔排序折半插入排序选择排序直接(简单)选择排序堆排序归并排序基数排序总结参考先提两个问题:插入排序为什么比冒泡常用?(两者的最优、平均、最差时间复杂度都相同,且都是原地排序——时间复杂度O(1),并且都是)因为冒泡排序的赋值交换次数比插入排序多(插入排序每次交
haixwang
·
2018-04-16 22:39
数据结构复习
之顺序表以及链表的方式实现常用的几种排序算法
文章目录如何选择综述完整代码-顺序表版本堆排序(小顶堆增量求topk-海量数据排序)完整代码-链表版本冒泡排序快速排序插入排序直接插入排序希尔排序折半插入排序选择排序直接(简单)选择排序堆排序归并排序基数排序总结参考先提两个问题:插入排序为什么比冒泡常用?(两者的最优、平均、最差时间复杂度都相同,且都是原地排序——时间复杂度O(1),并且都是)因为冒泡排序的赋值交换次数比插入排序多(插入排序每次交
haixwang
·
2018-04-16 22:39
数据结构复习
10.刷题常用点总结
Integer.bitCount(inti)一.Array(1)array.length;//没有括号(2)Reference类型注意检测null(3)Arrays.sort(a);//排序(4)Arrays.toString(a)//print(5)copy:a=Arrays.copyOf(b,b.length);System.arrayCopy(a,0,b,0,b.length);(6)pri
悄悄的二线光JNY
·
2018-03-02 00:00
算法总结
数据结构复习
第三章栈和队列一栈栈的类型顺序栈链式栈双向栈栈的应用数制转换行编辑程序迷宫求解表达式求值:前中后缀表达式,以及表达式之间的转换方法队列队列的类型链队列循环队列优先级队列队列的应用离散事件模拟递归第四章字符串字符串的模式匹配和模式匹配的改进KMP算法第五章数组和广义表矩阵对称矩阵,三角矩阵,三对角矩阵的压缩存储稀疏矩阵的压缩存储和转置,以及快速转置算法(在转置之前就用一个数组记录下来对应的j应该存在
刘岳森
·
2018-01-05 00:40
数据结构复习
之路-线性表
一,线性表是数据结构中最基础的内容,但它却占据着及其重要的地位。因为在后序的很多数据结构的操作都是建立在熟练掌握线性表的操作基础之上的。下面就开始复习线性表的内容吧。1.线性表的定义。线性表是指按顺序存储内容的数据结构。其物理实现的方式有两种,1)基于顺序存储的数组,2)基于链式存储的链表。2.线性表的实现。#defineSIZE50#defineTypeinttypedefstruct{Type
何芊墨
·
2017-11-30 21:51
数据结构
c语言
数据结构复习
(一)
1.线性表定义n个数据元素的有限序列,记作(a1,a2,…,an)ai是表中数据元素,n是表长度线性表特点除第一个结点(元素)外,其他每一个结点有一个且仅有一个直接前驱结点。除最后一个结点(元素)外,其他每一个结点有一个且仅有一个直接后继结点。2.顺序表定义和特点将线性表中的元素相继存放在一个连续的存储空间中。可利用一维数组描述存储结构特点线性表的顺序存储方式遍历顺序访问,可以随机存取4.链表链表
ZXF-36691402
·
2017-07-21 23:22
Linuxc学习
数据结构复习
笔记01_排序算法_交换排序
基于交换的排序方法主要有①冒泡排序和②快速排序。文章默认排序算法是升序一、冒泡排序基本思想:两两比较和交换,每次冒出一个关键字最大的记录。一般有两层循环,一般用两层for循环,外层循环只是指定这一趟已经有i个已冒出的数字(从而指定内层遍历的终点),内层循环j是遍历元素、比较、交换,直到n-i,循环结束条件是有一趟内层循环未发生交换,则证明有序。eg:原始序列:12,34,20,15,9,25,27
JarvisKao
·
2017-07-12 19:40
c++
算法
数据结构
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他