iT邦幫忙

鐵人檔案

第 11 屆 iThome 鐵人賽
回列表
Software Development

使用JavaScript學習資料結構與演算法 系列

作為一名明年就要畢業的大四生,我想將自己大二時學過的資料結構和常見演算法用JavaScript實作一次,像是連結串列、堆疊、佇列、排序還有河內塔、八皇后等問題。
透過這些練習提升自己的程式能力和文章的論述能力,並讓看我文章的人們有所收穫。

鐵人鍊成 | 共 30 篇文章 | 59 人訂閱 訂閱系列文 RSS系列文
DAY 21

Day21-排序法系列(五)-快速排序法

今天要介紹的是快速排序法 Quick Sort,它普遍被認為最快的排序演算法,並且採用分治法(Divide and Conquer)。運作方式是在資料列設定一個...

2019-10-05 ‧ 由 harry xie 分享
DAY 22

Day22-搜尋法系列(一)-循序搜尋法

今天要介紹的是循序搜尋法(Sequential Search),也可稱為線性搜尋法(Linear Search),運作原理相當簡單,就是在資料列一個一個值的和目...

2019-10-06 ‧ 由 harry xie 分享
DAY 23

Day23-搜尋法系列(二)-二分搜尋法

這次要介紹的是二分搜尋法(Binary Search),使用此排序法的話,要搜尋的資料列必須經過排序。運作原理就是將要尋找的值和資料列中間的值進行比較。如果尋找...

2019-10-07 ‧ 由 harry xie 分享
DAY 24

Day24-動態規劃-0/1背包問題

不知不覺開賽也來到第24天了,在前面的23天介紹了資料結構/排序搜尋演算法之後,剩下的7天每天都會用來解一道題目,那麼今天要探討的是一個非常經典的 Knapsa...

2019-10-08 ‧ 由 harry xie 分享
DAY 25

Day25-解題-Perfect Number 完美數

今天要來解的題目是完美數,完美數是什麼呢?如果一個正整數的除了自己本身的其他因數總和剛好等於該正整數,則該數字稱為完美數。 因此這次的題目內容就是輸入一個正整數...

2019-10-09 ‧ 由 harry xie 分享
DAY 26

Day26-解題-Armstrong number 阿姆斯壯數

今天要來解的題目是阿姆斯壯數,阿姆斯壯數是什麼呢?假定給定一個 n 位數的整數,該整數的每個位數乘上 n 次方的總和剛好為該整數,則該數字就為阿姆斯壯數。ex:...

2019-10-10 ‧ 由 harry xie 分享
DAY 27

Day27-解題-Caesar Cipher 凱薩密碼

今天要解的題目是凱薩密碼,凱薩密碼也稱為凱撒加密,它會將一串明文的所有字母順序經過一定數字的偏移後轉為密文。 例如有一串字母 ABCD,分別是英文26個字母中的...

2019-10-11 ‧ 由 harry xie 分享
DAY 28

Day28-解題-Ransom Note

今天我們要解的題目是 Ransom Note,題目內容如下: 先給定一段句子或是文章,之後再給出一個比較短的句子,若該句子的單字都能從一開始給的文章文章擷取出來...

2019-10-12 ‧ 由 harry xie 分享
DAY 29

Day29-解題-Two Sum

這次的題目如下:給定一個包含多個數字的陣列和一個目標值,然後從陣列裡面找出兩個數,兩個相加正好等於該目標值,要注意數字不可以被重複使用,陣列裡也可能有多種組合相...

2019-10-13 ‧ 由 harry xie 分享
DAY 30

Day30-解題-Subsets

終於來到最後一天的挑戰!!時間真的過很快呢~今天我們要解決 Subsets 問題。該問題內容如下: 給定一個陣列,裡面包含多個不重複的數字元素,然後要求出陣列中...

2019-10-14 ‧ 由 harry xie 分享