嵌入式学习笔记:数据结构与算法知识点总括

图片 1

  1. 基于数量元素之间的逻辑关系
    (1)集合结构
    (2)线性结构
    (3)树形结构
    (4)图状结构
  2. 依照数量成分之间关系的两样特色
    (1)线性结构:线性表,栈,队列,字符串,广义表和数组
    (2)非线性结构:树和图

9 栈:受限制的线性表(只可以在一端进行扦插和删除),特点:FILO先进后出(递归,具备记念功效、子程序调用),栈顶,栈底

2.物理构造:逻辑结构在微型Computer内部存款和储蓄器中具体落实的主意,有各类、链式、 索引、散列等储存方法

图片 2

次第 = 算法 + 数据结构

数据结构的剧情

独一的直接四驱(a3,直接四驱是a2)

结构体证明写在头文件之中

lowhigh

线性结构——二个对二个,如线性表、栈、队列

删除:(a1,q,a3...an)

连锁术语概念:

陈设和删除的一端---栈顶

↑上午 概念

C语言是面向进程的,而C++是面向对象的

数据结构Date Structure 物理结构Physical Structure

C++,重要思量的是哪些组织三个目的模型,让那一个模型能够符合与之对应的问题域,那样就能够由此取得对象的气象音信获得输出或促成进度序调控制。 所以C与C++的最大差距在于它们的用来缓和难点的思维格局不雷同。之所以说C++比C更上进,是因为“ 设计那一个定义已经被融合到C++之中 ”。

数量即音讯的载体。

先是定义四个量:low,high

算法与程序的区分:

6 函数

特性:有穷性、确定性、可行性、输入、输出

结果:假若找到了,查找成功,即使没找到,查找未果

线性表Linear List

数组来兑现

相会——数据成分间除“同属于贰个凑合”外,无任何涉及

缺点:空间一连(三千万数目,一连存款和储蓄)

基于数量成分间的涉嫌的主导特色有多种基本数据结构:

123456

图状结构——多个对多少个,如图(图是树的进行,可有树构成)

链式存款和储蓄:逻辑和大意不必然要统一(用一个节点占四个空中)

顺序存款和储蓄Sequential Storage 链式存款和储蓄Linked Storage

C是七个结构化语言,它的显要在于算法和数据结构。C程序的安排体贴思量的是何等通过贰个进度,对输入进行演算管理得到输出调节)。

删除数据:1.先是剖断表是不是为空。2.判定删除的地点是或不是管用。3.剔除后在此从前现在运动成分。4.尾指针last-1。5移动后,此前的末梢多个数据,直接忽略不用了,但是还在。

全盘二叉树:二叉树的各类分支要么都以满的,要不便是最终一层的分段能够不满,假设要有右分支,必供给有左分支

低价的查究,在挨着表的最后空间在提请二个空中用来存放表的管事个数or最终贰个要素下标。

8 中序遍历:左根右:...

3.数码运算:对数码开展的操作,增、删、查、改、排序。

n^2 2*n^2 +3-------O

↓凌晨 线性表 的逻辑和仓库储存结构、相关算法的落实以及线性表的选取譬如。

2 栈:只可以在一端举行插队和删除

一、数据结构:切磋数据里面包车型大巴关联。(C研商数值型数据里面包车型客车大约运算, 数据结构 还商讨非数值型之间的运算)

4 二叉树的5中造型

用gedit编辑.h和.c文件

{

方式化语言陈说:

思想:

算法分析:时间复杂度T 空间复杂度D(不思虑,就义来成全时间)Time/Space Complexity

3 结构划虚拟计:顺序结构、分支组织、循环结构

树形结构——三个对多少个,如树

13 链式存款和储蓄:结点(三个数据域,七个指针域)

量级T 取次数最高的项并去掉周到,作为时间复杂度 。

2 程序设计基础

率先成立表,再插入表,再增加和删除改查,销毁。

lowhigh

数量元素是数额的大旨单位(又称记录,Record),由若干个为主项整合

2 数据结构:数据+结构

图片 3

安排的一端---队尾

目录存款和储蓄Indexed Storage 散列存款和储蓄Hash Storage

3 数据:文字,凡是能被计算机所识别的符号(文字、图片、录像、声音、文书档案....)

图片 4

公共基础知识(30数据结构、数据库、软件工程、面向对象的观念...)

计划数据:1.先是判定表是或不是为满。2.剖断插入的地点是或不是可行。3.从后往上移步数据元素。 4.插入成分。5.尾指针last+1

张三、李四、王五

成立:申请三个结构体

1216182889102

DS=D数据成分的聚合,Evoque D上关系的会见

仓库储存结构:顺序存款和储蓄、链式存款和储蓄

算法Algorithm贰个又穷准则的雷打不动集中(对前后相继的优化,易阅读、调试、维护)

10 已知前序遍历和中序遍历,可以明确后序遍历

数据类型是对数码成分取值范围与运算的限制

4 数组

  1. 算法与计算机无关,程序信任于具体的Computer语言

  2. 算法入眼是在消除难点的思绪上

图片 5

言语的频度:可实行语句程序中重新推行的次数。某语句试行三次耗时t,施行次数f,则该语句总耗费时间t*f。

4 结构:逻辑结构、存款和储蓄结构

1.逻辑结构:集合、线性关系、树形关系、图状关系

作者推荐二个学C语言/C++的求学裙【 六九九,四七零,五九六 】,无论你是大腕依旧小白,是想转行依旧想入行都得以来打听一同前行一同学习!裙内有开辟工具,比较多干货和本事资料分享!

数码Date 数据类型Date Type 数据成分Date Element

5 指针

创建表 :...待写

除去元素----出栈

3 算法的好坏(时间复杂度(语句频度(语伏羲臣复实施的次数,最多))、空间复杂度)

(a1,a2,a3,a4,a5....an);

举个例子来讲:子弹夹(先转进去的子弹最终出来)

2 算法的5个特色:可行性、明确性、寒朝性、零个或四个输入、二个或多少个出口

取:/2那几个任务的值(取整数,不会四舍五入)

办法:

LIFO------------------后进先出

6 排序本领

9 结构体、共用体