資料結構和演算法先學哪個比較好,請問資料結構和演算法二者之間究竟是什麼關係?應該先學哪一個?

2021-04-18 09:13:39 字數 2661 閱讀 5763

1樓:匿名使用者

先資料結構,後演算法。因為演算法設計要求儘可能提高時空效率,而這就要通過資料結構來實現,所以兩者有先後之分

2樓:匿名使用者

一般大學可能會同時學,我建議先資料結構再演算法,資料結構相比較演算法來說其實簡單一點,而且演算法是需要一定資料結構支援的

3樓:碼寶寶呀

演算法是解決bai問題的方法,du解決一種問題可以有很多zhi方法(

dao演算法),所以就存內在解決具體問題容

最優秀的演算法(方法),而好的資料結構能大大的提高演算法的質量,也就是說先學一下資料結構,對一些常用的資料結構有了大概瞭解之後,再做一些複雜的演算法,這時候就能體現出資料結構的好處。

很多資料結構書後部分都在講演算法,演算法往往是針對特定的資料結構,而「往往」這兩字,就說明了複雜演算法往往需要好的資料結構來支援,但也有一些演算法不用到書上所說的資料結構。如:對10個整形數排序用冒泡法還是用選擇法?

這就是演算法的選擇問題,好像跟資料結構沒多大聯絡,如果你還是不知道如何做決定,或者想知道更多關於資料結構與演算法的,可以去找小碼哥李明傑瞭解一下,或許能幫助到你。

我的建議是先看看資料結構,瞭解常用和優秀的資料結構,再去學那些複雜的演算法,由淺入深,先打好基礎,再去學難的。

請問資料結構和演算法二者之間究竟是什麼關係?應該先學哪一個?

4樓:匿名使用者

一般來說我覺得先學演算法比較好,但演算法和資料結構都是相輔相成的,要學好演算法要有一定資料結構的基礎,要學資料結構亦要有演算法基礎。但演算法比資料結構更重要一些,因為沒有演算法只有資料結構是沒用的~

5樓:匿名使用者

資料結構+演算法=程式

就是說兩者是同樣重要,c語言的經典演算法都是很難的,資料結構也不好學,不過就是要想編出高質量的程式,資料結構必須學好,所以建議你,不要分開看,最好是一起看,雖然這樣比較難,可是隻要選擇了,就不要怕困難,要想學好程式,不下苦工是不行的。

6樓:匿名使用者

資料結構.

其實你在

學資料結構時也已經學演算法了,兩者分不開,試問下,你學資料結構就只學什麼是資料結構,有什麼型別?肯定離不了上機操作,寫程式,所以說不用區分這麼詳細.

如果不知道資料結構,那些演算法中講個結構你不懂,還是得回去看資料結構.

再:turbo c ?介面挺難用的,除錯不方便,建議換個編譯器,大部分;c++編譯器都能編譯c,如dev-cpp,vc..

學資料結構和演算法之前要先學什麼?

7樓:匿名使用者

不需要其他的了,因為資料結構跟c一樣也是一麼基礎課,學了他是為後期學其他課程作準備的,如編譯原理!!!

數學分析暫時還用不著但是可以鍛鍊思維能力!!

資料結構裡的內容跟離散數學關係很大,比如圖,等等!!

必須把離散學好!!

8樓:匿名使用者

具備c語言或c++等基本的程式設計知識,其中指標的概念一定要清晰明瞭。

最好能學習一些離散數學的知識。

對計算機的工作原理有一定的認識,主要是堆疊、記憶體管理的一些知識。

學資料結構和演算法之前要先學什麼?

9樓:匿名使用者

學習演算法和資料結構就是把你的程式執行速度變得更快,記憶體需求變得更小,**長度變得更短。正式進入資料結構和演算法前需要了解下c++記憶體的那些事。

在c++中,記憶體分成5個區,他們分別是堆、棧、自由儲存區、全域性/靜態儲存區和常量儲存區。

棧,在執行函式時,函式內區域性變數的儲存單元都可以在棧上建立,函式執行結束時這些儲存單元自動被釋放。棧記憶體分配運算內建於處理器的指令集中,效率很高,但是分配的記憶體容量有限;

堆,就是那些由new分配的記憶體塊,它們的釋放編譯器不去管,由我們的應用程式去控制,一般一個new就要對應一個delete。如果程式設計師沒有釋放掉,那麼在程式結束後,作業系統會自動**;

自由儲存區,就是那些由malloc等分配的記憶體塊,它和堆是十分相似的,不過它是用free來結束自己的生命的;

全域性/靜態儲存區,全域性變數和靜態變數被分配到同一塊記憶體中,在以前的c語言中,全域性變數又分為初始化的和未初始化的,在c++裡面沒有這個區分了,他們共同佔用同一塊記憶體區;

常量儲存區,這是一塊比較特殊的儲存區,它們裡面存放的是常量,不允許修改。

以上內容摘自《c++記憶體管理技術內幕》,學習資料結構和演算法前可以多多看一下。

c語言,資料結構,演算法導論三本書的關係是什麼,學習它們要有什麼基礎,以及三者學習先後次序是什麼?

10樓:揮劍五號

c語言就像鞋,資料結構就相當於走路,演算法導論就像跑步

只有穿上了鞋,你才能走起來,走的熟練了才能跑起來。

否則,你會走的腳疼,雖然也能走。。。。。

11樓:匿名使用者

c 資料結構 演算法導論

c不用基礎。資料結構和演算法導論至少得學一門語言吧。

先學資料結構看演算法導論可能會好點。畢竟演算法導論很多都涉及資料結構。

而且要看演算法導論的話,對語言比較熟悉之後再看比較合適。

12樓:空雪夢見

c語言是工具,資料結構是這個工具能做的事,演算法導論是自己想想看這個工具還能做什麼事,好像是這樣……

資料結構學的到底是什麼,和演算法的關係我在學資料結構

資料結構是所有語言都需要面對的問題。它研究的是一個演算法的時空效用。你把資料結構學好了,不能說明什麼,如果你想在it行業混,你最好還是重視它,如果你連資料結構都不懂,就跟你會造句,但是寫文章卻很費勁一樣。資料結構學的到底是什麼?和演算法有什麼關係?首先,資料結構是一門計算機語言學的基礎學科,它不屬於...

大資料和物聯網,學哪個比較好點,大資料技術與應用和物聯網技術哪個好

大資料偏重於行業分析 物聯網是感測器 網際網路的組合 側重資料收集 大概的分法是一個前端資料採集 一個後端資料分析 大資料技術與應用和物聯網技術哪個好 物聯網和大資料雲端計算哪個發展前景好一點 資料科學與大資料技術專業和物聯網工程專業哪個好 大約是2年半,大專只要是參加 高考,考入國家承認學歷的全日...

日語和韓語學哪個比較好,日語和韓語哪個比較好學

http www.dangdangcc.com 有 自學韓語 簡單工作復 日語 市場 制大日語入門比韓語bai簡單,就一du個五十音圖。但zhi是你會發現越往後學越難,因為dao日語中有很多複雜的語法,相對於韓語較深奧,其中的知識積澱要更厚重 初學韓語會被它的發音搞暈,但一旦搞清基本的發音,所有的韓...