算法編程 想學(xué)數(shù)據(jù)結(jié)構(gòu)和算法要不要學(xué)c語言?
想學(xué)數(shù)據(jù)結(jié)構(gòu)和算法要不要學(xué)c語言?學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)和算法不一定要用C語言,C也可以,但是學(xué)習(xí)C語言,要提高編程能力,最好是學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)和算法。為什么?因?yàn)閿?shù)據(jù)結(jié)構(gòu)和算法本身與編程語言關(guān)系不大,但不同語言的
想學(xué)數(shù)據(jù)結(jié)構(gòu)和算法要不要學(xué)c語言?
學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)和算法不一定要用C語言,C也可以,但是學(xué)習(xí)C語言,要提高編程能力,最好是學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)和算法。
為什么?因?yàn)閿?shù)據(jù)結(jié)構(gòu)和算法本身與編程語言關(guān)系不大,但不同語言的學(xué)習(xí)效率會有所不同。我們應(yīng)該避免那些對算法有大量語法干擾的語言。
合理的代碼結(jié)構(gòu)可以減少代碼量,提高代碼效率,構(gòu)建更強(qiáng)的代碼框架。
學(xué)習(xí)C語言版本的數(shù)據(jù)結(jié)構(gòu),可以對C語言本身有更深入的了解和應(yīng)用,如結(jié)構(gòu)、指針、內(nèi)存管理等技術(shù)要點(diǎn),
算法的使用,如MATLAB算法的驗(yàn)證和研究等,常用的算法需要數(shù)學(xué),算法語言,可以根據(jù)工作需要學(xué)習(xí)編程語言
首先,我認(rèn)為作為一名大學(xué)生,自學(xué)能力很強(qiáng)。對于C語言沒有學(xué)完的,可以花時(shí)間認(rèn)真學(xué)習(xí)。不,你可以去圖書館查資料,或者上網(wǎng),或者自學(xué)?,F(xiàn)在網(wǎng)絡(luò)平臺有很多優(yōu)質(zhì)資源,你可以試試。第二,數(shù)據(jù)結(jié)構(gòu)的算法是抽象的,必須認(rèn)真研究。它是編程的基礎(chǔ),與C語言沒有必然的聯(lián)系。我們可以用C語言實(shí)現(xiàn)一些算法。它也可以用其他語言實(shí)現(xiàn)。
第三,對自己有信心。沒有問題可以與老師和同學(xué)交流。既然我們選了一個(gè)好專業(yè),就應(yīng)該深入學(xué)習(xí)。
這是我的一些看法,希望對您有所幫助
我現(xiàn)在沒學(xué)完C語言,但是學(xué)校已經(jīng)開了數(shù)據(jù)結(jié)構(gòu)課程,感覺像聽天書一樣,如何更好地理解數(shù)據(jù)結(jié)構(gòu)?
顯然您需要先了解編程語言。數(shù)據(jù)結(jié)構(gòu)可以用不同的語言實(shí)現(xiàn)。您可以看到常用的數(shù)據(jù)結(jié)構(gòu)教材,有的基于C,有的基于CPP,還有的基于Java。先學(xué)習(xí)一門語言(不一定是C),然后再看數(shù)據(jù)結(jié)構(gòu),這將幫助您了解各種算法和結(jié)構(gòu)是如何實(shí)現(xiàn)的。事實(shí)上,當(dāng)我剛開始編程時(shí),我以為我在學(xué)習(xí)一門新語言。和外國人打交道就像學(xué)英語一樣。你學(xué)習(xí)高級語言來處理計(jì)算機(jī)(事實(shí)上,它們只是編譯器)。你可以“翻譯”你想對她說的話,告訴她我想做什么,我想成為什么樣的人。在這個(gè)時(shí)候,您所學(xué)到的并不像數(shù)據(jù)結(jié)構(gòu)那樣符合邏輯。有些東西必須死記硬背(括號的配對,什么是常量變量關(guān)鍵字,各種語句的使用規(guī)則,數(shù)組的定義和使用…)不要覺得這么復(fù)雜,只知道發(fā)生了什么。在那之后,還有一些有趣的東西值得學(xué)習(xí)-例如,指針
我也是一個(gè)軟件工程專業(yè)的學(xué)生。我已經(jīng)畢業(yè)了。學(xué)習(xí)C語言代表編程入門,并了解一些編程語言的相關(guān)知識。今后,你需要學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)、算法、計(jì)算機(jī)網(wǎng)絡(luò)和操作系統(tǒng)數(shù)據(jù)庫(concept和SQL)這些理論課程,這些都是科學(xué)的知識結(jié)構(gòu),不用擔(dān)心,比較枯燥。學(xué)校也應(yīng)該安排學(xué)習(xí),但大多數(shù)人不使用這門課程。
您學(xué)習(xí)C編程語言,建議深入學(xué)習(xí),然后選擇面向?qū)ο缶幊陶Z言Java和C++中的一種,個(gè)人建議是Java!C++也需要理解。掌握最重要的理論學(xué)科,編程語言一定不能多學(xué),需要學(xué)得更快。學(xué)點(diǎn)技能就夠了。Java可以做很多,Android、服務(wù)器、web后端都可以。如果你對web前端感興趣,你應(yīng)該好好學(xué)習(xí)HTML CSS JavaScript。不過,這些學(xué)科的本科課程會有安排。
大一現(xiàn)在時(shí)間比較多,建議不要把時(shí)間放在蘭花肥皂俱樂部學(xué)生會這種地方。在編程語言的基礎(chǔ)上,你可以去LeEcDe碼查看簡單的主題并培養(yǎng)編程思維。
編程是一個(gè)長期的過程,不要走得太遠(yuǎn),不要急得太慢。特別是不要被大數(shù)據(jù)、人工智能數(shù)據(jù)挖掘和所謂的高樓大廈所迷惑。
最后,數(shù)據(jù)結(jié)構(gòu)+算法=程序設(shè)計(jì)。
學(xué)數(shù)據(jù)結(jié)構(gòu)之前需要學(xué)一門c語言嗎?
呃,這不是對你的打擊。不學(xué)習(xí)C語言或C語言就不可能學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)(C語言版本,C語言版本),因?yàn)閿?shù)據(jù)結(jié)構(gòu)是基于相應(yīng)的語言,所以首先要學(xué)習(xí)語言。如果你想有一個(gè)堅(jiān)實(shí)的計(jì)算機(jī)基礎(chǔ),那么你應(yīng)該學(xué)習(xí)C語言。雖然C語言有很好的實(shí)用性,但是它很新,但是不容易學(xué),所以我建議你學(xué)習(xí)C語言,它是計(jì)算機(jī)語言的基礎(chǔ)。C和Java都是在C語言的基礎(chǔ)上發(fā)展起來的,學(xué)完C語言后,學(xué)習(xí)C/Java會事半功倍,對從事程序員的工作很有幫助。另外,C和VB在很多地方是相互聯(lián)系的,學(xué)習(xí)指針更容易