學資料結構有什麼用,資料結構學了有什麼用?

2021-03-22 00:55:23 字數 3600 閱讀 3475

1樓:

在許多型別的程式的設計中,資料結構的選擇是一個基本的設計考慮因素。許多大型系統的構造經驗表明,系統實現的困難程度和系統構造的質量都嚴重的依賴於是否選擇了最優的資料結構。

許多時候,確定了資料結構後,演算法就容易得到了。有些時候事情也會反過來,我們根據特定演算法來選擇資料結構與之適應。不論哪種情況,選擇合適的資料結構都是非常重要的。

選擇了資料結構,演算法也隨之確定,是資料而不是演算法是系統構造的關鍵因素。這種洞見導致了許多種軟體設計方法和程式設計語言的出現,物件導向的程式設計語言就是其中之一。

資料結構學了有什麼用?

2樓:匿名使用者

資料結構是在整個電腦科學與技術領域上廣泛被使用的術語。它用來反映一個資料的內部構成,即一個資料由那些成分資料構成,以什麼方式構成,呈什麼結構。資料結構有邏輯上的資料結構和物理上的資料結構之分。

邏輯上的資料結構反映成分資料之間的邏輯關係,而物理上的資料結構反映成分資料在計算機內部的儲存安排。資料結構是資料存在的形式。 資料結構是資訊的一種組織方式,其目的是為了提高演算法的效率,它通常與一組演算法的集合相對應,通過這組演算法集合可以對資料結構中的資料進行某種操作。

資料結構課程的主要目的是介紹一些常用的資料結構,闡明資料結構內在的邏輯關係,討論它們在計算機中的儲存表示,並結合各種資料結構,討論對它們實行的各種運算的實現演算法。很多演算法實際上是對某種資料結構施行的一種變換,研究演算法也就是研究在實施變換過程中資料結構的動態性質。

你說有沒有用呢?

其實 一切只要學精了什麼都是不錯的`~~

學資料結構有什麼用

學習資料結構有什麼用

3樓:匿名使用者

連結串列的好處在於不用使用連續的記憶體,而是利用記憶體中分散的儲存單元儲存資料;而且連結串列的長度是可以任意增刪的,但陣列一旦申請就不能改變,這根本不能滿足資料的動態儲存;再加上陣列的刪除和插入元素會使大片的資料進行移動,這就增加了運算量;

好好學吧,剛開始我也覺得稀裡糊塗的,但考研不得不再看了幾遍,覺的資料結構的思想還是很好的,不說各種排序和圖、二叉樹的演算法設計,單單一個棧就是很深奧的,他可以將一些複雜難懂的遞迴演算法,拆解改寫,讓你對這些演算法一目瞭然。。。。自己好好體會吧

有些東西並不向你看到的那麼簡單。。。。

學好資料結構有什麼實在的用處?

4樓:

有些演算法是支撐在高階資料結構上的

除了樓上說的

我們要快速的合併集合

查詢哪個元素在哪個集合中

就要用 並查集

我們要快速查詢改變中的

一列數中的一段的和

就要用樹狀陣列、線段樹

至於還有很多的題目要用二叉搜尋(排序)樹

如treap、splay、sbt等等

5樓:匿名使用者

你的問題令人很無語

學計算機語言沒有不學資料結構的

: 程式=資料結構+演算法

你現在主要是還沒有接觸到需要複雜資料結構的演算法例如:

1 輸入一串表示式: (1+3)*5-4+(3-5)*2輸出它的結果

這個程式就要用到棧的資料結構

2 中國象棋棋盤上

(x1,y1)位置上放著一隻馬

請問它走到(x2,y2)最少要走幾步

這個程式就要用到佇列的資料結構

3 給你平面內n個點的座標

用n-1條線段把這n個點連起來

線段總長度最小是多少

這個程式就需要圖的資料結構

記住這句經典的話:

程式=資料結構+演算法

資料結構這門課程學了有什麼用啊?

6樓:中朝伌

1,資料結構到底在程式中充當什麼角色,(如果說c語言是用來寫程式的,資料結構呢???)?? 有資料,和組織資料的資料結構,程式的行為邏輯才可以確定,程式才可能有實際意義。

資料結構是寫程式的基礎。一定要打好基礎。當然也可以在實踐中穩固基礎。

2,資料結構中的 那些那些樹,網什麼的 這樣有什麼用呢??在程式中有什麼作用呢! 各種資料抽象只是資料的不同組織形式,一切都為了方便程式訪問資料和提高程式效能而使用。

各種結構之所以這樣定義,就是為了通過以不同方法組織資料來改善、來提高程式效能和資料訪問速度。 在程式中,定義沒有實際價值,真正有價值是那種組織思想和操作方法;但如果沒有定義,就不會有這樣的物件(實際可以是變數、常量等實實在在的資料操作客體),所以最少也得要知道這些結構(起碼是名字;p)。 3,還有就是怎麼樣才能學好資料結構呢!

(c語言版的資料結構,是不是一定要有堅實的c語言功底呢?)??? 資料結構其實就是組織資料的思想和方法,同樣的資料結構,在不同語言上的應用,其實都是大同小異的。

資料結構不依賴於語言,不過學習使用它,就要選擇一種語言。學習資料結構是可以和學習語言並行進行的,基本瞭解了一點語言的邏輯,來應用在資料結構上,可以達到互相輔助學習的效果。

7樓:匿名使用者

一個典型的實用例子就是:把資料結構學好的人,很自然的把搜尋引擎玩的很溜。

上面其實只是附加特性,真正有用的是一種看待世界的思維正規化,用資訊去表示世界,然後對這些資訊進行操作,也就是說:一切皆是資訊和操作。

資訊有離散的,也有把它組織的含有結構特性的。這種結構只是一種出於對具體意象需要的形式上的服從,是一種人為的操縱,一種形式而已。

為什麼要把資料資訊組織成具有結構形式的資訊,這個問題其實轉化到具體生活中來就是書本可不可以不分類,到處離散的存放?其實也可以的,只是找起來很費時,因為沒有任何規律可以操作利用,只能利用暴力搜尋。

有些資訊之間本身就存在天然的內在聯絡,為什麼不直接在形式上把這些聯絡反映出來呢?

在尋找各種形式去儘量直接反映出各種需求物件的內在聯絡或規律。而這些形式固化出來就形成了大部分教材裡面的資料結構。

資料結構有什麼用呢

8樓:匿名使用者

我記的有個經典的比喻:把程式設計比作做菜,資料結構就好比食材(菜),演算法就好比廚藝(做菜的技巧)。

9樓:追夢

建議你上網看看一個《程式設計之美》的書,裡面有很多是利用資料結構的思想來解題的。資料結構是基礎學科,是很通用的,就好像以後你要去公司,人家說要讓你用二分法查詢來程式設計,你總應該懂得別人說的是什麼意思吧。

學習資料結構有什麼好處,對程式設計有什麼促進作用?

10樓:偷星

資料結構的理論性很強,因為他提供的是一種程式設計的思想方法,很多演算法都是這麼歸納出來的,比如說圖論裡的spf迪傑斯特拉,mst的普里姆和克魯斯卡爾都是這麼出來的。至於說的資料結構的話像棧、佇列、連結串列,我的個人建議是單連結串列你最好學著自己寫,雙連結串列的話能寫出來最好,不能寫的話,就去學一下c++stl(標準模板庫)的一些容器裡面有棧,佇列,集合,對映等等,都是能現成呼叫的,但是基本概念得知道。其實學習acm的話或許你的實戰經驗會強一些。

11樓:陡變吧

資料結構主要是程式設計的思想,演算法。。演算法是程式的靈魂,聽人家說很好,但我沒感覺吧,我在csdn看到的:等你有了幾年的實戰經驗也許演算法對你來說就沒什麼了,時間長了只求平穩最好,不在什麼算髮不演算法的了。。。

資料結構的學習 感覺資料結構學的就是思想。具體實現在實際程式設計中好像用處不大。尤其是演算法競賽

1 自己按照課本上的程式按時一遍 排序 圖的遍歷 查詢等等。這樣演算法你明白了 2自己動手寫 原理搞清楚 邏輯結構 物理結構 以及定義在上面的操作 怎麼成為一名程式設計師,要從 開始學起,先學什麼在學什麼 從hello wrod 開始學,下電子書copy邊看邊寫bai,一定要多練習du,不然學的 z...

c程式設計,資料結構,c程式設計,資料結構。

寫個簡單的單向連結串列,資料項為10個 struct linktable int main p1 data i p1 next null return 1 很久不寫程式了,可能有些錯誤,專大概意思就是這 屬樣吧查入和刪除就簡單說一下了。查入 先將p定義到要插入的位置 p1 new linktable...

資料結構試卷,資料結構試題及答案

給你找了一份自考的資料結構試卷和答案試卷 http content.edu edu.com.cn res 2006 11 16 00000d2t.shtml答案 http edu.資料結構試題及答案 內容來自使用者 go你好陌生人 資料結構試卷 一 填空殖 每空1分共20分 1.資料的物理結構主要包...