闲来没事,写写代码
闲来没事,写写代码

导航

 

关键词

  基本概念:

 

数据:  程序操作对象,用于描述客观世界信息

数据元素:  数据的基本单位。

数据项:  数据由若干数据项组成。

数据对象:  性质相同的数据元集合。数组,链表等。

 

struct _MYDATE//数据类型
{
    char name;
    int age;
    char addr[125];
};
int main() 
{
    struct _MYDATE mydate;//数据元素
    struct _MYDATE myarray[100];//数据对象
    memset(&mydate, 0, sizeof(mydate));
    strcpy(mydate.name, "name");//数据项
    strcpy(mydate.age, 20);//数据项
    strcpy(mydate.addr, "addr");//数据项
}

算法:问题求解步骤的描述,在计算机中表现为指令序列,算的是独立存在的,是解决问题的思想和方法。对于算法二而言,

语言不重要,思想才是核心,

掌握其思想,用c/c++/java,来编写都一样。

数据结构只是静态的描述了数据元素之间的关系,高效的程序需要在数据结构的基础上设计和选择算法。

算法是为了解决问题而设计的,数据结构是算法需要处理问题的载体,两者相辅相成。

 

算法的度量,

时候统计法
通过设计好的测试程序和数据,利用计算机的计时器对不同算法编制的程序裕兴时间长短比较,确定算法效率。

统计法,
比较不同算法对相同数据处理时间,


事前分析估计
在程序编制前依据统计方法对算法进行估算

统计法
依据统计的方法对算法效率估算

因数:1,算法采取的策略和方法
2,问题的输入规模
3,编译器产生的代码
4,计算机执行速度

算法倒退理论基础
算法最终编译成的计算机指令,每条指令在计算机上的运行速度固定,通过具体步骤就可以推导出算法的复杂度。

 

线性表

零个或多个数据元的有限序列,
数据元素之间有顺序,个数有限,数据元素相同类型。

性质
A0线性表第一个元素,
An表示线性表最后一个元素,A0只有一个后驱,An只有一个前驱,其他元素都有前驱和后驱,
线性表能逐项访问和顺序存取。


线性表的操作
1创建线性表
2,销毁线性表
3,清空线性表
4,将元素插入线性表
5,将元素从线性表中删除
6,获取线性表中某个元素的位置
7,获取线性表的长度
线性表的顺序存储结构指用一段地址连续的存储单元依次存储线性表的数据元素。

线性链表存储:存储在逻辑上连续,实际的内存可以不连续。


posted on 2022-03-16 09:17  闲来没事,写写代码  阅读(112)  评论(0)    收藏  举报