<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ## 6.1 概述 實際應用中所處理的數據經常是“大量同類型數據的集合”,例如一次物理實驗獲得的 大量實驗數據、一篇文章中的所有單詞、一幅畫布上的所有圖形等等,這幾個例子分別展示 了大量數值的集合、大量字符串的集合和大量對象的集合。為了表示和處理大量數據,編程 語言提供了集合體數據類型,如 Python 中的列表(list)、元組(tuple)、字典(dict)、集合(set)和文件(file)等。 一個問題中的大量數據通常是“相關的”,即數據之間存在特定的邏輯聯系。表示相關的大量數據時,必須將它們之間的邏輯聯系也表示出來。在程序設計中,為了方便、高效地 處理大量相關數據,常將各數據按照某種合適的存儲結構組織在一起,以便反映各數據之間 的邏輯聯系。數據結構(data structure)是計算機科學的一個分支,專門研究如何將大量相 關數據按特定的邏輯結構組織起來,以及如何高效地處理這些數據。 下面以字符串數據為例來說明上面這段話的含義。夸張一點說,字符串數據——如 "HELLO"——也是復雜數據,因為它是由一些更簡單的數據項(5 個字符"H"、"E"、"L"、 "L"和"O")組成的。為了在程序中能夠方便、高效地處理字符串"HELLO",我們將這 5 個字符視為以“連續存儲的序列結構”組織在一起,因為這種存儲結構最恰當地反映了 5 個字符之間的邏輯關系,從而最有利于數據處理的實現。反之,如果將 5 個字符東一個西一個地分散存儲,比如用幾個獨立的變量來分別存儲這 5 個字符: ``` c1 = "H" c2 = "E" c3 = "L" c4 = "L" c5 = "O" ``` 那么就沒有表示出這 5 個字符的邏輯關系(即按特定次序組成的一個單詞)。盡管這種存儲 方式也實現了數據的存儲,但它很難支持方便、高效的數據處理。例如,為了輸出"HELLO", 程序必須分別找到 c1 到 c5 這幾個存儲位置,并取出其中字符組合成輸出,顯然非常麻煩。 而在“連續存儲的序列結構”方式下,程序只需找到一個存儲位置即可。 存儲數據的目的是為了將來處理數據,故存儲結構一定要適應將來的數據處理。對字符 串數據而言,將相關的一組字符存儲為一個連續序列就是合適的,因為這種序列結構非常適 合取字符、取子串、合并等字符串操作。因此,編程語言通常都以“連續存儲序列”的邏輯 結構來組織多個字符組成的數據,并將字符串作為基本類型提供給程序員使用。這樣,程序 員就不必再去費心考慮該用什么邏輯結構來組織多字符數據了。當然,字符串實在算不得復 雜數據,說它是簡單數據也無不可,但以上討論完全適用于真正復雜的數據。 總之,我們得到的教訓是:如果不將組成復雜數據的大量數據項按照合適的邏輯關系組 織起來,那么就無法對復雜數據進行方便、高效的處理。換句話說,合適的數據結構往往是設計有效算法的關鍵。初學編程者通常以為算法才是程序設計的關鍵,其實不然。計算機科 學家 N. Wirth①提出過一個公式:算法 + 數據結構 = 程序 這足以說明數據結構的重要性。 由于現實世界中構成復雜數據的邏輯關系多種多樣,編程語言不可能對每一種邏輯結構 都像對字符串那樣提供現成的數據類型和處理方法。另外,即使是同一個復雜數據,隨著處 理需求的不同,也會導致采用不同的邏輯結構。因此,編程語言一般不會提供現成的數據結 構給我們使用,我們需要根據待解決的實際問題,自行設計復雜數據的數據結構。 本章介紹用于表示和處理大量數據的集合體數據類型和幾種常用的數據結構。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看