作者nicha115 (cha)
看板Python
標題[問題] 關於雜湊hash
時間Fri Jul 24 21:42:09 2020
板上高手好,
目前我所知道,hash雜湊函數就是字典,
只是有規則的key
那我想請問,這個東西在我們開發程式時,通常哪時候用到呢?
如果我跳過這個不學,是否不太好呢?
還是如果我沒感覺不學也不會怎樣
其實也未必要學?我知道這算是比較進階的東西
我想跳過雜湊直接學OOP
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.116.197.55 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Python/M.1595598131.A.FB4.html
※ 編輯: nicha115 (122.116.197.55 臺灣), 07/24/2020 21:56:41
1F:→ outshaker: 如果你目前沒有立即使用需求的話,跳過無妨 07/24 22:30
2F:→ mikapauli: 這算密碼學的 07/24 22:31
3F:→ outshaker: 然後雜湊函數跟字典的概念不太一樣,你可能搞錯意思了 07/24 22:33
4F:→ outshaker: 字典是用hash table實作的,但不代表它就是hash函數 07/24 22:38
5F:推 icetofux: 資料加解密、校驗會用到,不過通常需要時再去研究怎麼用 07/24 22:42
6F:→ icetofux: 就好。 07/24 22:42
7F:→ nicha115: 了解,謝謝大家! 07/24 23:01
8F:推 lance8537: 中文翻譯怎麼把他翻的這麼困難@@ 07/25 07:23
9F:推 Starcraft2: 我怎麼覺得hashtable的概念很重要 演算法課一定會有 07/25 13:52
10F:→ Starcraft2: 的一張 平常很常用到hashtable 有時候面試也會考 07/25 13:52
11F:→ Starcraft2: 概念或相關應用 07/25 13:52
12F:→ Starcraft2: 十幾頁而已有空時不妨念一下啊! Chapter 10: 07/25 13:53
14F:→ Starcraft2: 其他如果涉及加密、密碼學的進階部分同意可以跳過 07/25 13:56
15F:推 unchained: 很多問題的複雜度都可以透過hashmap 優化耶,應該要學 07/25 19:23
16F:→ unchained: 吧 07/25 19:23
17F:→ alvinlin: 例如你在使用者註冊時輸入帳號密碼後,把雜湊 hash過的 07/25 19:27
18F:→ alvinlin: 值儲存在資料庫中但不儲存實際的密碼。要驗證使用者是否 07/25 19:27
19F:→ alvinlin: 輸入了正確的密碼只需要再把他輸入的密碼雜湊 hash過再 07/25 19:27
20F:→ alvinlin: 和資料庫比對是否相同即可。可避免因資料外洩而導致使用 07/25 19:27
21F:→ alvinlin: 者密碼外洩。 07/25 19:27
22F:→ alvinlin: 還有些用在大數據上用來把資料分散儲存 07/25 19:28
23F:→ alvinlin: 如果你要實做hash方法,如上述的例子,那是應該好好研究 07/25 19:31
24F:→ alvinlin: 一下。或是用像md5 hash這種做好的。 07/25 19:31
25F:→ alvinlin: 但OOP和hash應該沒什麼關聯。 07/25 19:32
26F:推 s0914714: hash table也是靠hash function去映射阿 07/25 21:24
27F:推 s0914714: 如果只是指字典的使用方法 解題很常用到 07/25 21:27
28F:→ nicha115: 謝謝大家的分享~我應該還是得找時間把這個基礎補起來! 07/25 21:54
30F:→ Starcraft2: 想要走軟體工程師的話 OOP跟演算法這兩塊都很重要 07/27 02:39
31F:→ nicha115: 有中文最好了!雖然我之前看另一本中文講雜湊都看不懂.. 07/28 22:25