自学内容网 自学内容网

数据结构day1

数据结构
 相互之间存在一种或多种特定关系的数据元素的集合
    
    逻辑结构
        集合:所有数据再同一个集合中,关系平等。 
eg: 列车上的乘客们         
     C语言中的数组
        线性:数据与数据之间是一对一的关系。
eg:排队买包子   
     队列     向前是一个 向后也是一个  --- 一对一的关系----线性关系
     C语言中的数组在内存。 (数组线性表)
        树:一对多。        
        图:多对多。
        
        
物理结构:(在内存中的存储关系)
    1、顺序存储,数据存放在连续的存储单位中,逻辑关系和物理关系一致
    2、链式(malloc),数据存放的内存单位是随机或任意的,可以练习也可以不连续
        
struct Per     //数据元素
{
    char name;   //数据项
    int age;
    char phone;
}        
数据:可以输入输出,运行期间可以变化的。
数据项:有一定意义的数据  表示一个特定属性的变量
数据元素:多个数据项的整体

struct Per list[1000] ;   //数据对象:数据元素的集合        
        
        
abstruct datatype---->ADT       
数据的类型         
    是指一组性质相同的值的集合及定义在此集合上的一些操作的总称。    
    
    原子类型:int , char ,float 
    结构类型:sturct , union 
    差别sturct 占内存更大,
    union在使用的时候只能同一时间使用一种数据
    
    抽象数据类型, 数学模型 + 操作    
    基础的操作有:增删改查。
    

程序 = 算法 + 数据

算法:
    是解决特定问题求解步骤的描述,计算哪几种表现为指令的有限序列,每条指令表示一个或多个操作。

算法的特征:
1、 输入,输入特性: 输入是可选的,输出是必须的。
2、 有穷性,执行的步骤会自动结束,不能是死循环,并且每一步是在可以接受的时间内完成。
3、 确定性,同一个输入,会得到唯一的输出。
4、 可行的,每一个步骤都是可以实现的。

    
算法的设计:
1、 正确性
语法正确     合法的输入得到合理的结果     对精心选择,甚至刁难的测试都能正常运行结果正确。
2、 可读性
便于交流,阅读,理解。
3、 健壮性

4、 高效性
crc        
        
时间复杂度 O( ) ;
--------------------
算法时间复杂度
    执行这个算法所花费时间的度量

推导时间复杂度
1,用常数1取代运行时间中的所有加法常数
2,在修改后的运行函数中,只保留最高阶项。
3,如果最高阶存在且不是1,则取除这个项相乘的常数。        
        
        
O(1)<O(logn)<O(N)<O(nlogn)<O(n^2)<O(n^3)<O(2^n)<O(n!)<O(n^n)        
        


        
线性表
    零个或多个数据元素的  有限  序列
    5
    
        

        
        

        
=========================
在逗号位置折叠长的代码        

        
        
        
        
    


原文地址:https://blog.csdn.net/weixin_66436813/article/details/140625836

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!