寫在前面
一學期又過完了,回想這學期的java課程,有在國慶節前一天晚上熬夜到兩點的記憶,也有和王老師課上課下說騷話的有趣經歷,
更有和小組大佬們肝app的充實體驗,能夠說是收穫多多。並且一想到從此更不用寫博客,內心更是開心的一匹(但願這不是一個flag)。因此,就再用這篇博客給劃上一個完滿的句號。html
每週做業連接彙總
- 第一週學習總結
- 簡要內容:初步認識數據結構的相關知識,瞭解並掌握時間、空間複雜度等概念。
- 第二週學習總結
- 簡要內容:數據結構——棧的學習,棧是一種先進後出的數據結構,可以使用數組與鏈表實現。進一步強化對鏈表的代碼實現。
- 第三週學習總結
- 簡要內容:學習了隊列這種數據結構,以及環形隊列。如何使用鏈表和數組實現隊列,不一樣的實現方式有何區別與特色。
- 第四周學習總結
- 簡要內容:線性表的學習,無序線性表與有序線性表的區別,如何在棧和隊列的基礎上實現線性表。
- 第五週學習總結
- 簡要內容:查找算法、排序算法的學習。其中新增了以前未掌握的二分查找、快速排序、歸併排序、冒泡排序等算法。
- 第六週學習總結
- 簡要內容:對於非線性數據結構的學習,分析了樹的四種遍歷方法,探究了學習樹時遇到的問題。
- 第七週學習總結
- 簡要內容:樹的進一步學習,主要是AVL樹和紅黑樹。探究AVL樹在實現時出現的代碼問題。
- 第八週學習總結
- 簡要內容:對樹的一種變形,堆的學習,學習了堆的分類以及處理代碼實現環節的問題。
- 第九周學習總結
- 簡要內容:學習了圖的有關知識。例如,無向圖,有向圖,拓撲圖,以及和樹的遍歷方法相似的廣度優先遍歷與深度優先遍歷。
- 自認爲寫得最好一篇博客是?爲何?
-
- 當學姐指出我博客存在的問題後,我對本身的學習態度進行了反思,找出了在學習過程當中存在的幾個問題。例如,老是在最後關頭倉促應付完成,學習過程沒有深度與厚度,代碼實踐過程當中沒有太多動手。一致與老是浮於四處「湊」代碼問題和教材問題的狀況。同時,可是正在學習樹這一數據結構,難度較大,我及時對本身的學習態度進行改正。保證付出更多的時間在數據結構上,多看「他山之玉」,對於不懂的問題,與周圍同窗進行探討,從而解決了問題。在代碼實踐上,對於本身不理解的區域,不斷的敲代碼,從而加深了理解。所以寫出了這篇我自認爲比較好的博客。
- 做業中閱讀量最高的一篇博客是?談談經驗
說實話,個人博客一直比較普通,因此基本沒什麼訪問量。博客更像是一個筆記,將本身的學習過程記錄上去,所以,在寫博客的時候用心寫,記錄本身的問題和分析、處理問題的過程就足夠了。這就是我寫博客的經驗。java
實驗連接彙總
- 實驗一
- 簡要內容:對鏈表、數組的實踐,經過本次實驗熟練掌握其代碼實現的部分原理
- 實驗二
- 簡要內容:對樹等一系列數據結構進行實驗,從而進一步強化對樹這一數據結構的掌握和了解。
- 實驗三
簡要內容:將查找、排序算法同數據結構相結合,從而對整個學期內容進行回顧。git
團隊項目報告連接彙總
- 第一週階段總結
- 第二週階段總結
- 規格說明書
- 修訂歷史
- 上次的《需求規格說明書》初稿有哪些不足?
- 團隊編碼規範
- 使用Powerdesigner繪製ER圖
- 後端架構設計
- 團隊分工
- (一)核心需求的優先級
- (二)肯定子功能的工做量
- (三)TODOList及燃盡圖
- 本週分工及工做量比例
- 參考資料
- 衝刺周
代碼總量:10227 。應當是達到了學期的要求
編程
- 加點代碼,改點代碼是理解的最好方式,參考編程的智慧,談談你的心得
- 加點代碼,改點代碼在我看了相似於一個單步調試的過程,對於一段本身不能理解的代碼,可是看,咱們一時可能沒法瞭解。可是,註釋上一段,將其中的幾個局部變量輸出,看看同正常運行相比會發生什麼。同理,如何真正判斷是否理解這段代碼呢?那就給它加上些功能,若是能實現,就意味着咱們理解了它,讓它爲我所用。
- 積極主動敲代碼作到沒?教材實踐上有什麼經驗教訓?
在學期初,我確實怠慢了很多。可是學期中後期,基本能實現積極主動敲代碼。對於教材,咱們要作到盡信書不如無書的思路,尤爲是這本教材,確實存在着諸多問題,所以咱們要辯證的去看待書上的內容。後端
課堂項目實踐
- 課堂實踐ASL
- 哈夫曼編碼測試
- 時間複雜度分析: 時間複雜度分析,用大O記法寫出時間複雜度。
- ArrayStack的實現和測試: 完成課本中ArrayStack類的實現,特別是完成peek、isEmpty、size和toString方法的實現,並完成四個方法的測試。
- 鏈表插入: 寫出鏈表中節點插入的操做代碼。
- 鏈表實踐: 鏈表練習,要求實現下列功能:
經過鍵盤輸入一些整數,創建一個鏈表
實現節點插入、刪除、輸出操做
- 使用冒泡排序法或者選擇排序法根據數值大小對鏈表進行排序
- 第四章代碼檢查: 運行PP28,PP28頁的程序,根據我的學號輸入後綴表達式並計算。
- LinkedStack補全: 給出size、isEmpty和toString等方法的定義,以完成LinkedStack類的實現。
- 第五章代碼檢查-凱撒密碼: 代碼檢查P72-P73,凱撒密碼程序。
- 楊輝三角: 使用循環隊列輸出楊輝三角。
- 棧隊列測試:
- 第六章代碼檢查: 運行PP6.8和PP6.11的程序
- 線性表實踐: 定義一個商品類Product,須要包括商品名稱、價格等信息,使用鏈式存儲結構實現一個線性表,存儲商店中的商品。支持插入、刪除、選擇排序、查找等功能,並進行簡單測試。
- ASL測試: 已知線性表具備元素{5,13,19,21,37,56,64,75,80,88,92},若是使用折半查找法,ASL是多少?
輸出後綴表達式。
- 三種查找算法練習:
- 哈希衝突處理實踐: 把本身的學號加21,例如學號爲1,把22添加到序列後面,使用鏈地址法,解決衝突。編程實現,並測試。
- 希爾排序測試:
- 樹計算題: 計算題:
1.有1023個結點的徹底二叉樹,其高度是多少?葉結點數是多少?
2.高度爲h的徹底二叉樹至少有多少個結點?至多有多少個結點?
- 樹的深度和葉子個數計算: 計算課本中背部疼痛診斷器中決策樹的葉子節點個數?根據課堂介紹的遞歸樹深度計算算法,計算決策樹的深度。
- 中序和先序計算二叉樹結構:若已知中序和先序序列,計算二叉樹結構
- 層序遍歷法實踐: (1)使用遞歸實現層次遍歷背部疼痛決策樹,並按照層次順序輸出每一個節點內容。(2)非遞歸的層次遍歷法算法以下:
根結點入隊;
從隊頭取元素, 並執行以下3個動做:
(1)訪問該結點;
(2)若是該元素有左孩子,則左孩子入隊;
(3)若是該元素有右孩子,則右孩子入隊;
重複執行上述過程,直至隊列爲空。 此時,二叉樹遍歷結束。按照上述算法,編程實現層序遍歷,按照層序的方法,遍歷並依次輸出每一個節點內容。
堆構造與排序: 根據關鍵字序列:36,30,18,40,32,45,22,50,構造一顆小頂堆,並排序?
- 堆排序測試: 根據關鍵字序列:36,30,18,40,32,45,22,50,利用數組構造一顆大頂堆,並排序。
- 十一鏈表練習: 畫出十一鏈表結構。
- 最小生成樹:
1.畫出Prim算法的最小生成樹的生成過程
2.畫出Kruscal算法的最小生成樹的生成過程
3.計算最小權值
Dijkstra(迪傑斯特拉)算法測試: 使用Dijkstra(迪傑斯特拉)算法計算單源(V1出發)最短路徑。
- AOE練習:
一、求關鍵路徑,v1和ve的值並寫出具體步驟
二、畫出圖一可能的拓撲序列
三、畫出圖二所示無向圖的鄰接矩陣、鄰接鏈表,並列出深度優先和廣度優先遍歷圖所得的頂點序列。
四、寫出圖三的鄰接矩陣,並用prim算法求最小生成樹,畫出產生過程
- 哈夫曼測試: 設有字符集:S={a,b,c,d,e,f,g,h,i,j,k,l,m,n.o.p.q,r,s,t,u,v,w,x,y,z}。
給定一個包含26個英文字母的文件,統計每一個字符出現的機率,根據計算的機率構造一顆哈夫曼樹。並完成對英文文件的編碼和解碼。
- 課堂實踐對提升應用能力有幫助嗎?
- 有,在有限的時間裏完成代碼編程或者算法的理解應用確實考驗着咱們的平時的功底,同時經過實際操做來進一步的加深課本知識的理解
- 課堂實踐上本身有什麼經驗教訓?
- 課堂實踐要求咱們必須有預習和提早學習的意識,不然經過短短的課堂時間難以掌握某些較難的知識。
- 課堂實踐上對老師有什麼教學建議?
對於某些實踐能夠將其分紅幾個部分。好比理論性的部分較好理解,課堂上進行理論部分的測試,課下在當天完成代碼實踐的任務。從而更加合理的分配時間。數組
課程收穫與不足
- 本身的收穫(投入,效率,效果等)
- 這學期對於代碼實現的部分我認爲本身的動手能力有了較強的提升,掌握了必定的自我學習的方法。
- 本身須要改進的地方
- 改進本身的學習方法,多觸類旁通,多想想新的思路,繼續多和優秀的同窗交流。
結對學習是否是真正貫徹了?寫一下你提供的幫助或接受了什麼幫助,並對老師提供參考建議
可以貫徹結對學習,尤爲是咱們小組的於欣月,餘坤澎二位大佬,他們對於駑鈍的我在學習上給提供了無微不至的幫助與關心。使得我除了平常划水之外學習到了許多的知識。數據結構
問卷調查
- 你平均每週投入到本課程有效學習時間有多少?
- 20小時左右
- 每週的學習效率有提升嗎?你是怎麼衡量的?
- 有,尤爲是在難度較大的地方,效率更高。
- 藍墨雲班課的使用對你的學習有促進嗎?有什麼建議和意見嗎?
- 有必定的幫助,不過在手機端不太方即可能是我設置的問題。
- 你以爲這門課老師應該繼續作哪一件事情?
- 翻轉課堂
你以爲這門課老師應該中止作哪一件事情?
- 都挺合理的,我以爲王老師相對優秀!(舔狗甜到最後應有盡有)
二維碼:
架構