遞迴只應天上有,凡人應當用迴圈 !? 程式寫十次, 不如直接演一次 | 科普長知識

Поделиться
HTML-код
  • Опубликовано: 25 окт 2024

Комментарии • 27

  • @blackmusic5368
    @blackmusic5368 9 дней назад

    講的很清楚 最近想重溫cpp 我想遞迴的概念都是通用的

  • @鐵匠史密斯
    @鐵匠史密斯 Год назад +13

    發覺老師提到的沉浸式學習法,不夠中二是學不來的lol
    想像一個情境然後自己演得非常生動,最終能夠理解原理。
    真的是學習效率較高的方法 !
    我也來去演一次了 (影分身之術!!!

  • @kachunwong8184
    @kachunwong8184 11 месяцев назад +1

    教學很生動,由初學者角度出發,無定義 End case 的情況,無 return 的情況都 present 出來,做老師定會很適合。

  • @celialin8211
    @celialin8211 2 года назад +7

    老師很生動😂

    • @yuHsuanCode
      @yuHsuanCode  2 года назад +1

      看看這行多不好混 😅

  • @huangjamie6840
    @huangjamie6840 Год назад +5

    教得很好懂!三年前看到就學比較快了!不對!三年前你還沒出影片

  • @cheche5315
    @cheche5315 9 месяцев назад +1

    笑死 謝謝老師

  • @jninlove
    @jninlove 2 года назад +2

    好有趣喔!

  • @chenwilliam5176
    @chenwilliam5176 Год назад +1

    樹狀結構是一種資料結構, 它的演算法一般是用「遞迴演算法」💯
    如果是用的是「迴圈演算法」,是否也可以完成呢 ?
    😁

    • @yuHsuanCode
      @yuHsuanCode  Год назад +3

      可以喔, 原則上兩個是可以互換的
      只是迴圈寫起來會超麻煩, 要在迴圈外部
      自己準備暫存的變數, 記錄現在走到 tree 上面的哪個 node
      這個「準備暫存變數做記錄」這件事
      用遞迴來寫的話, 就剛好被包在某次 function 執行裡面 (類似影片中的 level)
      於是這種狀況
      大家自然就會習慣寫遞迴啦~

    • @AAA-uv1ny
      @AAA-uv1ny 11 месяцев назад

      看到這個問題突然想到 要用迴圈寫遞迴是不是要像做inter process communication那樣把每個node的local varible存到stack裡

  • @佑-x4j
    @佑-x4j Год назад +1

    2:23 迴圈開始

  • @coldheart9014
    @coldheart9014 Год назад +1

    python也太自由了吧

    • @yuHsuanCode
      @yuHsuanCode  Год назад +1

      python 寫起來就是好讀又隨心所欲
      代價就是缺少宣告 datatype
      寫 Java or C++ 的人會很不習慣呢

    • @胡椒醬
      @胡椒醬 Год назад

      @@yuHsuanCode 真的...在學校寫一堆C++看到這些例子都有補上去的衝動 哈哈哈

  • @dennisliu5641
    @dennisliu5641 Год назад +1

    最後一個寫法不符合functional programing的定義。既然都用mutation了,不如用for。

    • @yuHsuanCode
      @yuHsuanCode  Год назад +1

      錄完才發現漏洞百出
      還好只是搞笑不是講解ㄎㄎㄎ

    • @junsu200ok
      @junsu200ok 8 месяцев назад +4

      不知道mutation是啥XD
      剛剛去問了一下chatGPT,留一下言給和我一樣的小白
      當您改變資料結構中的內容或修改物件的狀態時,這被視為一種mutation操作。
      舉例來說,以下操作都可以視為mutation:
      -將變數的值從一個值改變為另一個值。
      -在列表(陣列)中添加、刪除或修改元素。
      -修改物件的屬性或狀態。
      -對字串進行修改(例如,連接字串、刪除子字串等)。

  • @blue-w-potato
    @blue-w-potato 8 месяцев назад +2

    666666666666666666