Indexing

Indexing

「索引法」。這是一個相當有特色的方法,尤其是在程式設計當中,更是經常被使用的方法。

索引法的概念,就是編頁碼、建目錄的概念。舉例來說,現在有一本字典,把所有的字都編了部首,並做了一份部首頁碼目錄。當我們要查一個字時,就可以根據部首,對照部首頁碼目錄,快速翻到對應的頁數,來查這個字了。

Array Indexing

在程式設計中,常常會這樣運用陣列:把資料存到對應的陣列格子當中,要找資料時就找對應的陣列格子。一份資料對應一個陣列索引值,一個陣列索引值對應一份(多份)資料,這就是索引法的精髓。

舉例來說,現在要把一些數字存到陣列裡,並在將來可以取出來,可以這麼做:

更深入的來看,字就是陣列儲存的資料,部首就是資料的特徵,頁碼就是陣列的索引值、記憶體位址,紙張就是陣列的格子、記憶體空間。

索引法的好處是找東西會非常快。比把東西依序在陣列裡面放好還要快。缺點就是會耗費記憶體空間,運氣不好時會有很多空格沒用到,而浪費了記憶體。

UVa 482 484 105