1. 程式人生 > >【劍指offer】程式碼錯誤記錄

【劍指offer】程式碼錯誤記錄

把《劍指offer》刷完了,記錄一下在牛客網提交程式碼中錯誤的記錄。
首先貼一張通過的圖紀念一下 0.0
這裡寫圖片描述

錯誤記錄

  1. 忘了import包
  2. 手滑沒寫程式碼點了提交
  3. 【劍指offer】面試題16:數值的整數次方 , 沒有考慮負數次方
  4. 忘了import包
  5. 【劍指offer】面試題26:樹的子結構
    找到與root2根節點值相同的子節點,並比較這兩棵樹,
    如果root2是root1的子結構,則返回true
    如果root2不是root1的子結構,則尋找下一個與root2根節點值相同的子節點。
    我在這裡處理的時候,如果root2不是root1的子結構,直接返回了false。這裡對條件處理出錯了
  6. 【劍指offer】面試題28:對稱的二叉樹
    題目沒講清楚,當頭結點為null時算不算對稱
  7. 【劍指offer】面試題19:正則表示式匹配
    輸入為”“,”.*”時候,沒處理好
  8. 【劍指offer】面試題20:表示數值的字串,
    第一次掛:不知道有-.123這種情況
  9. 【劍指offer】面試題20:表示數值的字串
    case:12e 掛了,粗心
  10. 【劍指offer】面試題20:表示數值的字串
    case:+-5 掛了,粗心
  11. 【劍指offer】面試題31:棧的壓入、彈出序列
    錯誤:
    if(popIndex == popA.length - 1 && list.isEmpty())
    return true;
    應該是:
    if(popIndex == popA.length && list.isEmpty())
    return true;
    粗心了!!!
  12. 忘了import包
  13. 忘了import包
  14. 複製錯程式碼了…把類名也複製進來了
  15. 使用Queue queue = new PriorityQueue<>(new Comparator…)的時候出錯了,在eclipse中是沒問題的,估計是java版本的問題
  16. 同上
  17. 用Queue的時候import了包,結果換成TreeSet的時候忘了刪除之前import和新增新的import,有毒!!!
  18. 編譯錯誤:您提交的程式碼無法完成編譯
    ./Solution.java:5: error: cannot infer type arguments for PriorityQueue<>
    PriorityQueue maxQ = new PriorityQueue<>(Collections.reverseOrder());
    ^
    1 error
    實在是莫名其妙。。也找不到比較好的解決辦法,牛客網不讓用優先佇列???
  19. 同18,我也是醉了,又要換成紅黑樹來做。。
  20. 【劍指offer】面試題50:第一個只出現一次的字元
    題目看錯了,要求返回位置,我返回了字元
  21. 複製程式碼的時候把建構函式的名字也複製了。。。
  22. 【劍指offer】面試題51:陣列中的逆序對
    忘了取餘
  23. 【劍指offer】面試題55(2):平衡二叉樹
    程式碼邏輯寫錯了
  24. 劍指offer】面試題55(2):平衡二叉樹
    樹為空時返回 true
  25. 忘了import包
  26. 【劍指offer】面試題57:和為s的數字
    程式碼邏輯錯誤
  27. 【劍指offer】面試題57:和為s的數字
    不存在符合條件的數時,返回空陣列而不是null
    題目又沒講清楚。。。
  28. 【劍指offer】面試題65:不用加減乘除做加法
    執行超時:您的程式未能在規定時間內執行結束,請檢查是否迴圈有錯或演算法複雜度過大。
    迴圈出錯了,異或運算寫成了與運算
  29. 忘了import包

綜上,有7次忘了import包,6次程式碼沒錯但是複製錯了或者網站不支援,2次題目描述不清。這些粗心的情況值得反思。其他的14次邏輯錯誤也要偶爾來看看。