更新時(shí)間:2020-02-21 來源:黑馬程序員 瀏覽量:
Java數(shù)據(jù)結(jié)構(gòu)預(yù)算法 |
||
中級(jí) |
共29節(jié)課 |
|
程序=數(shù)據(jù)結(jié)構(gòu)+算法,如果要寫出優(yōu)秀的程序,那么數(shù)據(jù)結(jié)構(gòu)和算法是必須掌握的技能之一。本套課程使用的編程語言為java,將以數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)與相應(yīng)的算法實(shí)現(xiàn)為主線,并對(duì)算法的運(yùn)算效率做出分析,對(duì)典型的線形結(jié)構(gòu)、樹形結(jié)構(gòu)、圖形結(jié)構(gòu)有詳細(xì)介紹和代碼實(shí)現(xiàn),以及對(duì)常見的查找和排序算法做深入探究,每一個(gè)知識(shí)點(diǎn)都會(huì)配套有大量的習(xí)題講解,以加深對(duì)所學(xué)知識(shí)的理解和應(yīng)用。課程設(shè)計(jì)以數(shù)據(jù)結(jié)構(gòu)為主,注重實(shí)戰(zhàn)應(yīng)用,強(qiáng)調(diào)邏輯思維能力的培養(yǎng)。>。
|
||
課程簡(jiǎn)介
程序=數(shù)據(jù)結(jié)構(gòu)+算法,如果要寫出優(yōu)秀的程序,那么數(shù)據(jù)結(jié)構(gòu)和算法是必須掌握的技能之一。本套課程使用的編程語言為java,將以數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)與相應(yīng)的算法實(shí)現(xiàn)為主線,并對(duì)算法的運(yùn)算效率做出分析,對(duì)典型的線形結(jié)構(gòu)、樹形結(jié)構(gòu)、圖形結(jié)構(gòu)有詳細(xì)介紹和代碼實(shí)現(xiàn),以及對(duì)常見的查找和排序算法做深入探究,每一個(gè)知識(shí)點(diǎn)都會(huì)配套有大量的習(xí)題講解,以加深對(duì)所學(xué)知識(shí)的理解和應(yīng)用。課程設(shè)計(jì)以數(shù)據(jù)結(jié)構(gòu)為主,注重實(shí)戰(zhàn)應(yīng)用,強(qiáng)調(diào)邏輯思維能力的培養(yǎng)。
適用人群
掌握一門編程語言,最好是java語言,有一定的入門級(jí)編程基礎(chǔ)。
課程亮點(diǎn)
本套課程將會(huì)系統(tǒng)的學(xué)習(xí)有關(guān)數(shù)據(jù)結(jié)構(gòu)和算法的相關(guān)知識(shí),從基本的數(shù)據(jù)結(jié)構(gòu)棧、隊(duì)列、鏈表開始,再到算法分析,從程序的時(shí)間復(fù)雜度和空間復(fù)雜度分析算法的性能,然后是經(jīng)典的算法實(shí)現(xiàn),如選擇排序、插入排序、歸并排序、快速排序等,最后到高級(jí)的數(shù)據(jù)結(jié)構(gòu)如樹、圖等的實(shí)現(xiàn)。整個(gè)課程的講解思路是先提出問題,然后分析問題并使用暴力算法解題,然后考察算法的各種改進(jìn)并驗(yàn)證改進(jìn)的效果,最后再講解配套的習(xí)題,意在使用更優(yōu)秀的方法解決大規(guī)模問題。
在每一個(gè)知識(shí)點(diǎn)的講解過程中配套了大量的圖片加深對(duì)算法過程以及數(shù)據(jù)結(jié)構(gòu)的理解,共配圖154副。
課程內(nèi)容
第一章:
數(shù)據(jù)結(jié)構(gòu)與算法概述;
算法分析;
冒泡排序;
選擇排序;
插入排序;
希爾排序;
歸并排序;
第二章:
快速排序;
排序穩(wěn)定性分析;
順序表;
鏈表;
第三章:
棧;
隊(duì)列;
符號(hào)表;
二叉查找樹;
第四章:
堆;
優(yōu)先隊(duì)列;
2-3查找樹;
紅黑樹;
第五章:
B-樹;
B+樹;
并查集;
無向圖;
第六章:
有向圖;
拓?fù)渑判颍?
加權(quán)無向圖;
最小生成樹;
加權(quán)有向圖;
最短路徑;