轉:尋找的基本概念

來源:互聯網
上載者:User

標籤:style   http   color   使用   ar   strong   檔案   資料   問題   

轉自:http://student.zjzk.cn/course_ware/data_structure/web/chazhao/chazhao9.1.1.htm

本章簡介

     由於尋找運算的使用頻率很高,幾乎在任何一個電腦系統軟體和應用軟體中都會涉及到,所以當問題所涉及的資料量相當大時,尋找方法的效率就顯得格外重要。在一些即時查詢系統中尤其如此。因此,本章將系統地討論各種尋找方法,並通過對它們的效率分析來比較各種尋找方法的優劣。

尋找的基本概念

1、尋找表和尋找

     一般,假定被尋找的對象是由一組結點組成的表(Table)或檔案,而每個結點則由若干個資料項目組成。並假設每個結點都有一個能惟一標識該結點的關鍵字。
     尋找(Searching)的定義是:給定一個值K,在含有n個結點的表中找出關鍵字等於給定值K的結點。若找到,則尋找成功,返回該結點的資訊或該結點在表中的位置;否則尋找失敗,返回相關的指示資訊。

2、尋找表的資料結構表示
(1)動態尋找表和靜態尋找表
     若在尋找的同時對錶做修改操作(如插入和刪除),則相應的表稱之為動態尋找表。否則稱之為靜態尋找表。

(2)內尋找和外尋找
     和排序類似,尋找也有內尋找和外尋找之分。若整個尋找過程都在記憶體進行,則稱之為內尋找;反之,若尋找過程中需要訪問外存,則稱之為外尋找。

3、平均尋找長度ASL
     尋找運算的主要操作是關鍵字的比較,所以通常把尋找過程中對關鍵字需要執行的 平均比較次數(也稱為平均尋找長度)作為衡量一個尋找演算法效率優劣的標準。
    平均尋找長度 ASL(Average Search Length)定義為:
       
  其中:
     ①n是結點的個數;
     ②Pi是尋找第i個結點的機率。若不特別聲明,認為每個結點的尋找機率相等,即
           pl=p2…=pn=1/n
     ③ci是找到第i個結點所需進行的比較次數。
  注意:
     為了簡單起見,假定表中關鍵字的類型為整數:
        typedef int KeyType; //KeyType應由使用者定義

轉:尋找的基本概念

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.