蘇嵌 鄭艷秋 2018 7 24

2021-08-21 17:51:06 字數 4540 閱讀 2531

學習日誌                                     姓名:                      日期:

今日學習任務

1、熟練掌握鍊錶的所有操作;(單鏈表、單向迴圈,雙向迴圈鍊錶)

今日任務完成情況

(詳細說明本日任務是否按計畫完成,開發的**量)

1、熟練掌握鍊錶的所有操作;(單鏈表)

今日開發中出現的問題彙總

今日未解決問題

單向迴圈鍊錶的初始化、頭插、尾插、中間插入、刪除、倒序

今日開發收穫

資料結構作用:管理資料:(存、取、遍歷、查詢)

鍊錶作用:解決陣列帶來的空間利用問題;陣列靜態分配容易造成浪費,鍊錶動態分配空間

編寫鍊錶步驟:1.定義節點型別,確定資料域2.定義頭指標3.初始化鍊錶

while(temp != null)是遍歷所有節點

while(temp->next != null)是用來找最後乙個節點

自我評價

(是否按開發規範完成既定任務,需要改進的地方,與他人合作效果等)

基本完成今天的學習進度

其他

**:1、  簡單單鏈表實現

1 #include

23 struct node

4 ;8

9 int main()

10 31     return 0;

32 }

2、單向鍊錶(不帶表頭)的初始化、頭插、尾插、中間插入、刪除、倒序

1 #include

2 #include

3 enum result

4 ;13

14 struct node

15 ;

21 typedef struct node node;

22 typedef node * link;

2324

25 void create_link(link *head)

26 29

30 void insert_head_node(link newnode,link *head)

31 35

36 int insert_mid_node(link newnode,link *head,int num)

37 42     else

43    

53             temp = temp->next;

5455         }

5657         return insert_fail;

58     }

5960 }

61 void insert_tail_node(link newnode,link *head)

62 68     else

69    

7576             temp->next = newnode;

77             newnode = null;

78     }

7980 }

8182 int delete_node(link *head,int num)

83 88     link temp = *head;

89     if((*head)->num == num)

90    

96     else

97    

109110             p = temp;

111             temp = temp->next;

112         }

113     }

114     return delete_fail;

115116 }

117118 int reverse_link(link *head)

119

124     link p = *head;

125     link s = p->next;

126     link t = s->next;

127     while(t != null)

128    

134     s->next = p;

135     (*head)->next = null;

136     *head = s;

137138     return reverse_success;

139 }

140141

142 void display_node(link head)

143

150 }

151152 int main()

153

168     //newnode = (link)malloc(sizeof(node));

169     //delete_node(&head,7);

170     reverse_link(&head);

171     display_node(head);

172     #if 0

173     newnode->num = 11;

174     if(insert_mid_node(newnode,&head,5) == insert_success)

175    

179     else

180    

183     #endif

184185     return 0;

186 }

3、單向鍊錶(帶表頭)的初始化、頭插、尾插、中間插入、刪除、倒序  1   1 #include

2 #include

3 enum result

4 ;13

14 struct node

15 ;

21 typedef struct node node;

22 typedef node * link;

2324

25 void create_link(link *head)

26 30

31 void insert_head_node(link newnode,link *head)

32 36

37 int insert_mid_node(link newnode,link *head,int num)

38 48             temp = temp->next;

4950         }

5152         return insert_fail;

5354 }

55 void insert_tail_node(link newnode,link *head)

56 62

63             temp->next = newnode;

64             newnode->next = null;

6566 }

6768 int delete_node(link *head,int num)

69 84

85         p = temp;

86         temp = temp->next;

87     }

8889     return delete_fail;

9091 }

9293 int reverse_link(link *head)

94 99     link p = *head;

100     link s = p->next;

101     link t = s->next;

102     while(t != null)

103    

109     s->next = p;

110     (*head)->next->next = null;

111     (*head)->next = s;

112113     return reverse_success;

114 }

115116

117 void display_node(link head)

118

125 }

126127 int main()

128

143     //delete_node(&head,7);

144     //reverse_link(&head);

145     //display_node(head);

146147     newnode = (link)malloc(sizeof(node));

148     newnode->num = 11;

149     if(insert_mid_node(newnode,&head,5) == insert_success)

150    

154     else

155    

158159     return 0;

160 }

蘇嵌 鄭艷秋 2018 7 12

今日學習任務 1 輔導老師完成學習內容答疑 2 3小時完成c語言摸底測試 今日任務完成情況 詳細說明本日任務是否按計畫完成,開發的 量 1 基本完成老師布置的嵌入式linux開發工具篇題目整理 2 基本完成c語言程式的編寫 今日開發中出現的問題彙總 1 實時性的定義 2 對posix gnu gpl...

蘇嵌 鄭艷秋 2018 7 20

今日學習任務 1 熟練特殊陣列的使用 指標陣列 函式指標陣列等 2 熟練掌握右左法則的使用 複雜定義宣告解釋 今日任務完成情況 詳細說明本日任務是否按計畫完成,開發的 量 1 熟練特殊陣列的使用 指標陣列 函式指標陣列等 2 熟練掌握右左法則的使用 複雜定義宣告解釋 今日開發中出現的問題彙總無 今日...

蘇嵌 日誌 周文東 7月20日

蘇嵌 專案實戰 學習日誌 姓名 周文東 日期 7月20日 今日學習任務 陣列指標 指標陣列 函式指標 函式指標陣列 今日任務完成情況 詳細說明本日任務是否按計畫完成,開發的 量 今天任務按計畫完成,如何使用指標陣列和數字指標,對陣列的分類進行了講解。開發量還蠻簡單的,舉一反撒即可。今日開發中出現的問...