搜尋初步 乙個小例子

2021-08-27 21:28:11 字數 1190 閱讀 3475

本篇部落格主要以乙個小例子來初步探索一下「搜尋」,包括程式的邏輯結構設計

例:在美元中,硬幣是有名字的,它有一些英文單詞去對應的硬幣的面值,比如1分錢叫做penny,5分錢叫做nichel......(有乙個數字對應乙個英文單詞)。如果要編寫乙個程式做搜尋,使用者輸入乙個數字(面額),程式輸出對應的英文,那麼如何實現?

分析:本題的關鍵點是如何建立「數字面值」與「英文」這兩者之間的聯絡。可以分別設定兩個陣列

如圖所示,如果在amount陣列中搜到了乙個值:比如10,得到它所在的位置是2,那麼就可以在字元陣列2的位置上得到dime。

**:

#define _crt_secure_no_warnings 1

#include#include//搜尋函式

int search(int a, int key, int size)

} return ret;

}int main()

; char*p = ;

int sz = sizeof(amount) / sizeof(amount[0]);

int loc = search(amount, 0, sz);

if (loc != -1)

else

system("pause");

return 0;

}

但是這樣有乙個不好處:它是割裂的兩個陣列。更好的做法是:將數字面額與對應的英文放的比較近;這樣的話,一旦找到面額,直接再附近就可以找到英文,不需要到另外的地方去找。改進思路:不需要有兩個陣列,而是設計乙個結構,結構內容包含「int 型別的數字面額」和「字元指標」,用這樣的結構構造乙個結構體陣列,然後進行初始化。

#define _crt_secure_no_warnings 1

#include#includestruct

coins = ,

, , ,

};int main()

}system("pause");

return 0;

}

文字的乙個小例子

自然語言文字預處理 導入庫 import pandas as pd import jieba 結巴分詞 from sklearn.feature extraction.text import tfidfvectorizer 基於tf idf的詞頻轉向量庫 分詞函式 def jieba cut str...

ViewPager的乙個小例子

早就聽說有這個viewpager控制項,專案要中使用的也多,viewpager也是更新到了viewpager2。但是我一直沒有使用過,現在記錄一下簡單的使用方法。它的使用和recycleview listview的使用大同小異。也需要介面卡和監聽事件。相信用過這些控制項的同學一定不陌生。上 acti...

while迴圈的乙個小例子

我國最高山峰是珠穆朗瑪峰 8848m,我現在有一張足夠大的紙張,厚度為 0.01m。請問,我摺疊多少次,就可以保證厚度不低於珠穆朗瑪峰的高度?分析 1 統計思想 定義統計變數 2 最高山峰是珠穆朗瑪峰 8848m 最終厚度 有一張足夠大的紙張,厚度為 0.01m 初始厚度 3 厚度不低於珠穆朗瑪峰的...