2019q1 Homework1 (lab0)
contributed by < ultype
>
注意看 作業要求,共筆的網址應該以 “publish” (點選「發布」按鈕可得) 的網址,也就是如 https://hackmd.io/s/XXXX 的形式,請留意!
Image Not Showing
Possible Reasons
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →
jserv
- Data structure
- queue.h
- list_ele_t 為單向 linkedlist單元
- queue_t 有兩個list_ele_t成員分別指向 linklist 頭和尾的list_ele_t單元 和size大小
- 第一題
- 新增一個queue
- 檢查malloc回傳值是否為null來判斷malloc有無成功
- 初始化queue
- 第二題
- 注意傳近來的queue是否為null
- 新增兩個function listEleNew和char counter 方便新增新單元
- 檢查listEleNew 回傳值 是否為null
- 插入元素會遇到兩個狀況
- cond1 Queue size == 0
- cond2 Queue size != 0
- 第三題
- 同第二題
- cond1 Queue size == 0
* 頭尾同時指向新元素
- cond2 Queue size != 0
* 尾指向新元素
* 在尾處插入新元素
- 第四題
- 注意傳近來的queue是否為null
- 刪除元素會遇到兩個狀況
- queue 剩下一個單元
- queue 剩下多於一個的單元
- 字串的最後要補上"\0" 不然會出錯
- 第五題
- 注意傳近來的queue是否為null
- 發現可重複利用第四題完成第五題
- 第六題
- 注意傳近來的queue是否為null
- 回傳queue內size 即可
- 第七題
- 注意傳近來的queue是否為null
- 觀察反轉後與原本linkedlist是對稱的
- 先將前面的單元往後搬
- 被搬動的單元搬到原本tail的後面
- 被搬動的單元的next指向tail->next
- a->b->c->d
- b->c->d->"a"
- c->d->"b"->a
- d->"c"->b->a
- 資料來源 leetcode 大神 (來源遺失)
githook 腳本研究
- script資料夾內
- install-git-hooks
- pre-commit.hook