第二章学习小结_

第二章学习小结

1, 学习内容:

线性表分为顺序表和链表

   顺序表:优点:随机存取。 缺点:插入删除难;需要一段连续的存储空间

   链表:  优点:插入删除容易,存储空间可以不连续。缺点:按下标查找效率低

 

顺序表

线性表的顺序表示和实现

——顺序表的存储结构:

#define MAXSIZE 100

typedef struct{

   ElemType *elem;

   int length;

}SqList; //顺序表的存储结构为SqList

顺序表中基本操作的实现:(不熟)

1, 初始化

2, 取值

3, 查找

4, 插入

5, 删除

链表

(1)单链表的定义和表示:一个结点又分为数据域和指针域

 

易混淆概念:头指针,头结点,首元结点

L,  p,  p->next指的是哪个结点

Pa=pc的意思

(2)单链表的基本操作:

1,初始化

2, 取值

3, 查找

4, 插入

5, 删除

6, 创建单链表(前插法和后插法)

循环链表

双向链表

课外知识,sort的用法:

#include <iostream>

#include <algorithm>

int main()

{

 int a[20]={2,4,1,23,5,76,0,43,24,65},i;

 for(i=0;i<20;i++)

  cout<<a[i]<<endl;

 sort(a,a+20);

 for(i=0;i<20;i++)

 cout<<a[i]<<endl;

 return 0;}//sort默认升序排列

待改进:代码要加注释

        代码规范性待改进

        在数据结构学习投入的时间不够,对某些知识仍不熟

        对时间复杂度的计算不熟

小结:对顺序表和链表的结构以及某些步骤很不熟,特别是顺序表,还不能做到不看书来敲代码,需要多加练习,多尝试,对链表的某些概念任意混淆,感觉到作业还是有些难度。

 

目标:下次要提前写作业,把更多的时间花在深入理解每一行代码上。

posted @ 2019-03-17 21:37  Y000  阅读(117)  评论(0编辑  收藏  举报