亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

在VB里巧用數據類型集合

2019-11-18 17:47:16
字體:
來源:轉載
供稿:網友
----VB提供一種很有用的數據類型集合(Collection)。她的工作原理類似與C里的鏈表,可以很方便的實現插入,刪除。并且在使用了Key之后,檢索操作也變得非常簡單。但其編程上的方便卻帶來了效率上的急劇下降(尤其在大數據量時會讓你無法忍受)。以下舉兩個例子來討論一下怎樣把集合和數組結合使用,使程序在方便和效率之間達到一種平衡。
----1.要求建立一數據結構,用來保存學生的學號,姓名和成績,并在需要時以成績的高低按順序輸出這些信息。

----這里我想提供兩種解決方法(當然還有其他方法)。

----第一種:完全用集合來保存數據。

----首先定義一個結構如下(該結構同時用與第二種方式)

TypetMyType
IDAsLong
NameAsString
ScoreAsInteger
EndType
再定義類clsData如下
PublicIDAsLong
PublicNameAsString
PublicScoreAsInteger
并定義插入函數用來接受數據并插入到數據結構中
PublicFunctionInsertToCol(pDataAstMyType)
'其中m_ColData保存記錄
DimmyClassAsNewclsData
SetmyClass=Nothing
ForiLoopCtrl=1Tom_ColData.Count
Ifm_ColData(iLoopCtrl).Score
<=pData.ScoreThenExitFor
Next
myClass.ID=pData.ID
myClass.Name=pData.Name
myClass.Score=pData.Score
Ifm_ColData.Count=0OriLoopCtrl
=m_ColData.CountThen
m_ColData.AddItem:=myClass
Else
m_ColIndex.AddItem:=myClass,
before:=iLoopCtrl
EndIf
EndFunction
這時,對每個記錄做處理如下
PublicFunctionOut向數組中插入數據的函數如下
PublicFunctionInsertToArray(pDataAstMyType)
IfiCurIndex>99ThenExitFunction
ForiLoopCtrl=1Tom_ColIndex.Count
Ifm_Array(m_ColIndex(iLoopCtrl)).Score
<=pData.ScoreThenExitFor
Next
Ifm_ColIndex.Count=0OriLoopCtrl
=m_ColIndex.CountThen
m_ColIndex.AddiLoopCtrl-1
Else
m_ColIndex.AddiLoopCtrl-1,before:=iLoopCtrl
EndIf
m_Array(iCurIndex).ID=pData.ID
m_Array(iCurIndex).Name=pData.Name
m_Array(iCurIndex).Score=pData.Score
iCurIndex=iCurIndex 1
EndFunction

這時,對每個記錄做處理如下

PublicFunctionOutProcess()
ForiLoopCtrl=1Tom_ColData.Count
I=m_ColData(iLoopCtrl)
CurrentID=m_Array(I).ID
CurrentName=m_Array(I).Name
CurrentScore=m_Array(I).Score
'對當前記錄做相應處理
Next
EndFunction

----*性能分析
----對于集合來講,隨著記錄個數的增長,對集合的操作效率飛快下降。因為,集合按下標查找一記錄時首先從集合的頭一條記錄開始,順序向下,直到指定的下標位置。因此,訪問m_ColData(99)要比訪問m_ColData(1)慢的很多。而大家都知道數組在內存中是順序存放,因此,訪問某條記錄的效率與下標大小無關。當記錄數或每個記錄的項目數越大,效率的提高越明顯。(大家可以自己寫一些測試程序,具體比較以下它們之間的效率差別,會感到非常驚訝的)

----2.當記錄有唯一關鍵字,并經常以這個關鍵字做查詢時可以使用以下方法。

----定義用于保存數據的結構和結構數組

TypetMyType
Item_1AsString
'為關鍵字
Item_2AsString
Item_3AsString
EndType
Publicm_Array()AstMyType
Publicm_ColIndexAsNewCollection
'用于保存索引的集合
定義用于保存索引信息的類clsIndex如下
PublicItem_KeyAsString
PublicID_OfArrayAsInteger
當接受到一條記錄pData后插入過程如下
PublicFunctionInsertData(pDataAstMyType)
DimmyClassAsNewclsIndex
ID_OfArray=ID_OfArray 1
m_Array(ID_OfArray).Item_1=pData.Item_1
m_Array(ID_OfArray).Item_2=pData.Item_2
m_Array(ID_OfArray).Item_3=pData.Item_3
myClass.Item_Key=pData.Item_1
myClass.ID_OfArray=ID_OfArray
m_ColIndex.AddItem:=myClass,Key:=pData.Item_1
EndFunction
那么,當需要以給出的關鍵字(mKey)
取得數據時,用以下方法實現
Current_Item1=m_Array(myClass(mKey)
.ID_OfArray).Item_1
Current_Item2=m_Array(myClass(mKey)
.ID_OfArray).Item_2
Current_Item3=m_Array(myClass(mKey)
.ID_OfArray).Item_3->


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久精彩免费视频| 色樱桃影院亚洲精品影院| 日韩中文字幕在线观看| 国产精品1区2区在线观看| 精品视频久久久久久| 91国自产精品中文字幕亚洲| 欧美性猛交xxxx乱大交极品| 精品亚洲aⅴ在线观看| 久热国产精品视频| 日韩av在线网| 久久精品亚洲94久久精品| 亚洲欧美日韩天堂一区二区| 亚洲免费视频网站| 日本精品va在线观看| 精品国产91久久久久久| 久久成年人免费电影| 久久久久久久一区二区三区| 色综合亚洲精品激情狠狠| zzijzzij亚洲日本成熟少妇| 5252色成人免费视频| 国产精品成熟老女人| 国产狼人综合免费视频| 欧美成人黑人xx视频免费观看| 精品福利在线视频| 亚洲自拍另类欧美丝袜| 国产精品免费在线免费| 欧洲美女免费图片一区| 俺去亚洲欧洲欧美日韩| 欧美裸体男粗大视频在线观看| 久久中文字幕视频| 国产在线999| 亚洲精品第一页| 日韩av在线免费| 国产精品爱久久久久久久| 97视频在线观看免费高清完整版在线观看| 日韩av电影免费观看高清| 欧美精品久久一区二区| 最近2019年中文视频免费在线观看| 亚洲一区二区在线播放| 亚洲综合日韩中文字幕v在线| 91精品国产91久久久| 亚洲国产古装精品网站| 97国产一区二区精品久久呦| 第一福利永久视频精品| 国产成人综合久久| 久久久久北条麻妃免费看| 久久99国产精品自在自在app| 亚洲影院高清在线| 国产精品爽黄69天堂a| 欧美第一淫aaasss性| 亚洲另类激情图| 2021久久精品国产99国产精品| 最新国产成人av网站网址麻豆| 精品美女久久久久久免费| 久久国产精品视频| 久久久久久久久久久网站| 日韩精品视频中文在线观看| 久久国产精品影视| 欧美综合一区第一页| 久久久亚洲欧洲日产国码aⅴ| 日韩精品免费观看| 91视频国产一区| 久久影院资源网| 国产精品一区av| 国产精品视频内| 欧美日韩aaaa| 91精品国产91久久久久久最新| 国产精品黄页免费高清在线观看| 综合136福利视频在线| 按摩亚洲人久久| 亚洲大胆人体av| 欧美人与性动交a欧美精品| 欧美乱大交xxxxx另类电影| 日韩久久精品电影| 日本久久91av| 日韩一区二区福利| 成人亚洲综合色就1024| 久久成人18免费网站| 黑人精品xxx一区| 国语自产在线不卡| 91久久精品美女| 国产精品人成电影| 日韩成人性视频| 国产精品久久久久aaaa九色| 欧美亚洲成人网| 日韩av毛片网| 欧美日韩国产影院| 欧美日韩国产成人高清视频| 欧美在线观看一区二区三区| 欧美中文在线字幕| 久久精品免费播放| 精品成人在线视频| 精品欧美国产一区二区三区| 国产精品久久久久久久久久99| 国产suv精品一区二区| 7m精品福利视频导航| 亚洲视屏在线播放| 久久人人爽人人爽人人片av高清| 免费91麻豆精品国产自产在线观看| 一本色道久久88精品综合| 最近2019好看的中文字幕免费| 夜夜嗨av一区二区三区四区| 欧美另类极品videosbestfree| 国产香蕉精品视频一区二区三区| 45www国产精品网站| 成人写真福利网| 国产精品v日韩精品| 欧美资源在线观看| 亚洲第一页自拍| 欧美日韩国产中文字幕| 97在线精品视频| 午夜精品在线观看| 国产做受高潮69| 欧美xxxx做受欧美.88| 懂色av影视一区二区三区| 最新国产精品拍自在线播放| 91免费在线视频网站| 欧美大人香蕉在线| 国产午夜精品全部视频在线播放| 国产精品户外野外| 亚洲精品aⅴ中文字幕乱码| 国产又爽又黄的激情精品视频| 97欧美精品一区二区三区| 亚洲一区二区三区视频播放| 日日狠狠久久偷偷四色综合免费| 国产精品一二三在线| 久久久亚洲影院你懂的| 欧美xxxx综合视频| 久久婷婷国产麻豆91天堂| 日韩有码视频在线| 色综合伊人色综合网| 91精品国产乱码久久久久久久久| 91在线观看免费观看| 日韩精品在线播放| 亚洲国产精品小视频| 理论片在线不卡免费观看| 国产精品久久久久久久天堂| 亚洲深夜福利在线| 亚洲福利视频专区| 久久这里有精品| 456亚洲影院| 亚洲精品视频免费在线观看| 日韩久久精品成人| 91精品国产九九九久久久亚洲| 国产精品69av| 久久精品国产久精国产思思| 国内外成人免费激情在线视频| 最近中文字幕日韩精品| 欧美亚洲激情在线| x99av成人免费| 久久男人av资源网站| 国产91精品网站| 国产精品人成电影在线观看| 国产精自产拍久久久久久| 久久6精品影院| 大桥未久av一区二区三区| 国产精品永久免费| 国产精品高清在线观看| 久久久久久久97| 欧美性视频精品| 91在线中文字幕| 欧洲成人在线视频| 成人黄色大片在线免费观看| 欧美xxxx14xxxxx性爽|