雜湊表C 提高查詢速度

2021-05-22 13:32:52 字數 1114 閱讀 5612

一,雜湊表(hashtable)簡述

在.net framework中,hashtable是system.collections命名空間提供的乙個容器,用於處理和表現類似key/value的鍵值對,其中key通常可用來快速查詢,同時key是區分大小寫;value用於儲存對應於key的值。hashtable中key/value鍵值對均為object型別,所以hashtable可以支援任何型別的key/value鍵值對.

二,雜湊表的簡單操作

在雜湊表中新增乙個key/value鍵值對:hashtableobject.add(key,value);

在雜湊表中去除某個key/value鍵值對:hashtableobject.remove(key);

從雜湊表中移除所有元素: hashtableobject.clear();

判斷雜湊表是否包含特定鍵key: hashtableobject.contains(key);

下面控制台程式將包含以上所有操作:

using system;

using system.collections; //使用hashtable時,必須引入這個命名空間

class hashtable }

三,遍歷雜湊表

遍歷雜湊表需要用到dictionaryentry object,**如下:

for(dictionaryentry de in ht) //ht為乙個hashtable例項

四,對雜湊表進行排序

對雜湊表進行排序在這裡的定義是對key/value鍵值對中的key按一定規則重新排列,但是實際上這個定義是不能實現的,因為我們無法直接在hashtable進行對key進行重新排列,如果需要hashtable提供某種規則的輸出,可以採用一種變通的做法:

arraylist akeys=new arraylist(ht.keys); //別忘了匯入system.collections

akeys.sort(); //按字母順序進行排序

for(string skey in akeys)

{ console.write(skey + ":");

console.writeline(ht[skey]);//排序後輸出

如何提高結構物件作為鍵的雜湊表的查詢速度

2009 07 13 17 10 複製鏈結 rss 譯言 每日精品譯文推薦 imqiang 去看原文章 譯者 imqiang 當使用結構物件作為雜湊表的鍵時,雜湊表的查詢操作的效能糟透了。這要 歸功於 內部所使用的用來查詢的方法gethashcode 如果乙個結構只是包含簡單的值型別 int,sho...

提高oracle查詢速度

參看當前排序的方式安排,如果sorts disk sorts memory 5 你就迫切需要進行排序優化了。select from v sysstat where name like sort 查詢結果 所以我們並不需要調整sort area size。因此只能通過重新索引,碎片整理來進行優化。開始...

提高查詢資料速度

在實際專案中,通過設計表架構時,設計系統結構時,查詢資料時綜合提高查詢資料效率 1.適當冗餘 資料庫在設計時遵守三正規化,同時業務資料 對資料的操作,比如資料審核,對某人評分等 和基礎資料 比如資料詳情,使用者描述等 要分開儲存,放在不同表中。在設計資料庫時,三正規化能夠最大限度的節省 資料庫儲存所...