数据结构:第2章学习小结

1.内容小结:

线性表依据内存空间是否连续分为顺序表和链式表,通常用数组和链表分别表示其具有的存储结构。

数组的特点:

  • 在内存中,地址连续;
  • 能实现随机访问
  • 插入和删除操作效率低,查找操作效率高(具体问题具体分析)
  • 数组使用前必须声明所占内存的大小

链表的特点:

  • 在内存中,地址不连续
  • 只能顺序访问
  • 插入和删除操作效率高,查找操作效率第(具体问题具体分析)
  • 动态地分配存储空间,内存利用率高

本章的学习重点还是在链表这一比较陌生的概念上,首先是了解链表常见的几种分类:

转载于:https://www.cnblogs.com/FengZeng666/p/9425117.html

截止所学,比较常用的还是单链表,做题的时候经常用的一些操作如下

 1 void InitList(LinkList &a)
 2 {
 3     a = new LNode;
 4     a -> next = NULL;
 5 }
 6  
 7 void CreateList(LinkList &a, int n)
 8 {
 9     LNode *p = a;
10     int num;
11     for(int i = 0; i < n; i++)
12     {
13         cin >> num;
14         p -> next = new LNode;
15         p = p -> next;
16         p -> data = num;
17         p -> next = NULL;
18     }
19 }
20 
21 void InsertList(LinkList &a, int n, int x){
22     LNode *p = a;
23     if(p -> next == NULL){
24         LNode *q = new LNode;
25         q -> data = x;
26         q -> next = NULL;
27         p -> next = q;
28         p = q;
29         return ;
30     }
31     while(p -> next != NULL){
32         LNode *temp = p;
33         p = p -> next;
34         if(p -> data == x)    return;
35         if(p -> data > x){
36             LNode *q = new LNode;
37             q -> data = x;
38             q -> next = p;
39             temp -> next = q;
40             return; 
41         }
42         
43     }
44    
45     LNode *q = new LNode;
46         q -> data = x;
47         q -> next = NULL;
48         p -> next = q;
49         p = q;
50         return ;
51
52 }
53 
54 void OutputList(LinkList a){
55     LNode *p = a -> next;
56     while(p != NULL){
57             cout <<p->data;
58     if(p -> next != NULL)
59     cout <<" ";
60     p = p->next;
61     }
62 }
63 
64 void DestroyList(LinkList a){
65     LNode *p = a, *q;
66     while(p != NULL){
67         q = p -> next;
68         delete(p); 
69         p = q; 
70     }    
71 }

这一章的内容不多,但却非常有难度,希望随着学习的深入,对链表的操作能渐渐地得心应手吧。

2.心得体会

虽然说只是平时的练习,却也常常是跟时间赛跑才能完成,无论是pta的练习还是组内讨论的问题,都要求对题目有明晰的理解,不然就会经常绕圈子甚至不知所措,希望能一直保持一股学习的劲儿吧!

3.资料分享

推荐mooc上陈越姥姥的数据结构课程,也就是老师给我们看的那个。

4.后续目标

要继续努力,学好下一章。

posted on 2020-04-12 20:54  曾繁浩  阅读(169)  评论(0编辑  收藏  举报