開發記錄(week#3)
 
作業要求
  • Question #2, #3, #4, #5, #6, #27
  • 在 GitHub 上 fork quiz,然後逐一修改每個目錄裡面的檔案
  • 對於 Question #2, #3, … #6 都需要實做遞迴和非遞迴的版本
  • 要一併準備測試資料
  • 除了修改程式,也要編輯 Hackpad 下方「+作業區」,增添開發紀錄和 GitHub 連結
  • 額外要求觀賞電影《進擊的鼓手》,思考這 4 週以來,課程給你的衝擊 (若你沒衝擊的話,可以退選了),在自己的 Hackpad 紀錄心得,特別是對於追求卓越這件事
  • 應該要有完整的測試程式,並測試各項邊界狀況
  • 執行時間分析
  • 記憶體需求分析
  • cache miss 分析
  • 時間複雜度分析
  • 善用 assert
  • 提供遞迴與非遞迴的版本
  • 截止日期:
  • Oct 17, 2015 (含) 之前
 
 
 

Q#2

 
  • 我認為這題最大的障礙在於 smallest_character 不更改接受的參數之下,要如何得知 array 的元素總數量。原因是 str [] 在這個 function 是被當成 char *  type,那用一般的 sizeof ( str ) /sizeof ( str[0] ) 是不行的。
也有在同學的筆記發現 strlen()的用法,按理來說這應該也不行...?
 
  iterative  版本
 
  Performance counter stats for './iterative' (5 runs):
 
             2,912      cache-misses                       ( +- 14.62% )
 
       0.001605889 seconds time elapsed        ( +-  4.35% )
 
   recursive 
    Performance counter stats for './recursive' (5 runs):
 
             3,072      cache-misses      ( +- 12.43% )
 
       0.001316155 seconds time elapsed      ( +- 12.06% )