實(shí)戰(zhàn)玩轉(zhuǎn)算法7個(gè)經(jīng)典應(yīng)用詮釋算法精髓
以下是【會(huì)員:墨子於】分享的內(nèi)容全文:
看的見(jiàn)的算法 7個(gè)經(jīng)典應(yīng)用詮釋算法精髓
采用基礎(chǔ)的Java語(yǔ)言,通過(guò)7款經(jīng)典好玩的游戲,bobo老師帶你進(jìn)入不一樣的算法世界,體驗(yàn)算法在實(shí)際開(kāi)發(fā)中的應(yīng)用,真正把算法用起來(lái)!
第1章 歡迎來(lái)到看得見(jiàn)的算法
歡迎來(lái)到看得見(jiàn)的算法。這個(gè)課程將以獨(dú)一無(wú)二的方式,向你展示算法究竟有什么用,在實(shí)際項(xiàng)目中能做什么,并向你一一展示通過(guò)學(xué)習(xí)這個(gè)課程,你將能夠制作出多么酷炫的程序:)
1-1 歡迎來(lái)到看得見(jiàn)的算法
1-2 學(xué)習(xí)這個(gè)課程將完成什么項(xiàng)目?
1-3 關(guān)于本課程的編程環(huán)境
1-4 更多學(xué)習(xí)本課程的注意事項(xiàng)
第2章 要想看得見(jiàn),先要搞定GUI編程
在這一章,你將從0開(kāi)始接觸Java Swing編程,進(jìn)入GUI的編程世界。通過(guò)這一章的學(xué)習(xí),你將了解Java Swing最基本的用法。在這一章的最后,你將能夠使用Java Swing制作簡(jiǎn)單額動(dòng)畫(huà),并且能夠使用鍵盤(pán)鼠標(biāo)進(jìn)行交互。
2-1 使用JFrame
2-2 創(chuàng)建屬于自己的第一個(gè)JFrame子類(lèi)
2-3 設(shè)置畫(huà)布與圖形繪制基礎(chǔ)
2-4 使用Graphics2D
2-5 整理繪制工具類(lèi)
2-6 高級(jí)繪制特性:抗鋸齒和雙緩存
2-7 動(dòng)畫(huà)基礎(chǔ)
2-8 算法可視化中的MVC
2-9 鍵盤(pán)事件
2-10 鼠標(biāo)事件
2-11 課程所使用的GUI編程模板
第3章 概率模擬算法
什么是蒙特卡洛算法?如果一個(gè)房間有100個(gè)人,每一時(shí)刻所有人都隨機(jī)給另外的人一塊錢(qián),一定時(shí)間以后,房間里人們的財(cái)富分配是怎樣的?怎么求解PI的近似值?著名的三門(mén)問(wèn)題是怎么回事?游戲里的寶箱,有20的中獎(jiǎng)率,打開(kāi)5個(gè)寶箱就一定能中獎(jiǎng)嗎?對(duì)于這些問(wèn)題,在這一章將統(tǒng)統(tǒng)給你答案!...
3-1 一個(gè)有意思的分錢(qián)模擬問(wèn)題
3-2 深入隨機(jī)分錢(qián)問(wèn)題
3-3 蒙特卡洛算法
3-4 使用蒙特卡洛算法求PI值
3-5 不需要可視化的蒙特卡洛模擬
3-6 三門(mén)問(wèn)題
3-7 你一定能中獎(jiǎng)嗎?
第4章 排序算法可視化
有沒(méi)有見(jiàn)過(guò)網(wǎng)上酷炫的排序過(guò)程動(dòng)畫(huà)?在這一章,我們將帶領(lǐng)你制作選擇排序,插入排序,歸并排序,快速排序和堆排序的動(dòng)畫(huà)。通過(guò)這些動(dòng)畫(huà),我們將更深入的理解這些排序算法的優(yōu)劣,以及相應(yīng)的優(yōu)化思路:)
4-1 選擇排序算法可視化.
4-2 為可視化添加更多效果
4-3 插入排序可視化.
4-4 在近乎有序的數(shù)據(jù)上測(cè)試插入排序算法.
4-5 通過(guò)歸并排序算法深入理解遞歸
4-6 歸并排序算法可視化.
4-7 快速排序算法可視化
4-8 在快速排序中隨機(jī)選取標(biāo)定點(diǎn)
4-9 雙路快速排序算法可視化
4-10 三路快速排序算法可視化
4-11 堆排序算法可視化
第5章 走迷宮
走迷宮是一個(gè)經(jīng)典問(wèn)題。這一章將針對(duì)這個(gè)經(jīng)典問(wèn)題進(jìn)行詳細(xì)分析,最終完成一個(gè)可視化的計(jì)算機(jī)自動(dòng)在迷宮中尋找正確路徑的動(dòng)畫(huà)應(yīng)用。通過(guò)這個(gè)動(dòng)畫(huà)的制作,我們還將深入分析深度優(yōu)先遍歷和廣度優(yōu)先遍歷,發(fā)現(xiàn)這二者之間最為重要的聯(lián)系。...
5-1 處理迷宮文件
5-2 迷宮可視化
5-3 迷宮問(wèn)題和圖的遍歷
5-4 深度優(yōu)先遞歸走迷宮
5-5 迷宮問(wèn)題與回溯法
5-6 非遞歸深度優(yōu)先走迷宮
5-7 非遞歸深度優(yōu)先走迷宮求解最終路徑
5-8 廣度優(yōu)先走迷宮問(wèn)題
5-9 深度優(yōu)先遍歷和廣度優(yōu)先遍歷的內(nèi)在聯(lián)系
第6章 隨機(jī)迷宮生成
RPG游戲中的迷宮都是如何隨機(jī)生成的?在這一章,我們將探索一種隨機(jī)迷宮的生成算法,并且完成一個(gè)從無(wú)到獲得完整酷炫迷宮的動(dòng)畫(huà)過(guò)程。通過(guò)學(xué)習(xí)這個(gè)算法,我們也將領(lǐng)悟,如何在深入理解經(jīng)典算法的基礎(chǔ)上,改進(jìn)算法,制作個(gè)性化的數(shù)據(jù)結(jié)構(gòu),來(lái)完成不一樣的目標(biāo)。 ...
6-1 什么是迷宮
6-2 生成迷宮基礎(chǔ)
6-3 深度優(yōu)先遍歷生成迷宮
6-4 非遞歸深度優(yōu)先遍歷生成迷宮
6-5 廣度優(yōu)先遍歷生成迷宮
6-6 隨機(jī)隊(duì)列生成迷宮
6-7 迷宮生成的迷霧效果
6-8 生成隨機(jī)性更強(qiáng)的迷宮
6-9 更多迷宮問(wèn)題
第7章 自己做一個(gè)掃雷游戲
雖然游戲引擎越來(lái)越發(fā)達(dá),但并非所有的游戲都能夠通過(guò)拖拖拽拽來(lái)完成。掃雷就是一個(gè)例子。通過(guò)這章的學(xué)習(xí),我們將探索制作掃雷這個(gè)游戲背后的算法,讓大家認(rèn)識(shí)到算法無(wú)處不在。即使是一個(gè)簡(jiǎn)單的掃雷,如果不會(huì)算法,還真實(shí)現(xiàn)不出來(lái)呢:)...
7-1 掃雷是什么鬼?掃雷里包含什么算法?
7-2 掃雷代碼基礎(chǔ)
7-3 隨機(jī)生成雷區(qū)
7-4 驗(yàn)證隨機(jī)生成雷區(qū)算法的隨機(jī)性
7-5 Fisher-Yates洗牌算法的應(yīng)用
7-6 為掃雷程序加入交互
7-7 掃雷與floodfill算法
7-8 更多掃雷相關(guān)和floodfill算法的應(yīng)用
第8章 益智游戲自動(dòng)生成解 - Move the Box
喜歡益智游戲,但是腦細(xì)胞不夠用?讓我們編程來(lái)自動(dòng)求解一個(gè)益智游戲吧!通過(guò)這個(gè)過(guò)程,我們也將初步接觸經(jīng)典人工智能的核心思想――搜索。希望學(xué)完了本章課程,你不僅能夠?qū)W會(huì)自動(dòng)求解Move the Box這個(gè)游戲,還能夠自己寫(xiě)出求解其他益智游戲的自動(dòng)化算法。分分鐘掌握黑科技!...
8-1 玩一玩Move the Box
8-2 求解Move the Box的數(shù)據(jù)架構(gòu)
8-3 求解Move the Box的渲染
8-4 搜索框架
8-5 處理箱子掉落過(guò)程
8-6 處理箱子消除過(guò)程
8-7 顯示問(wèn)題的解
8-8 更多搜索優(yōu)化思路
8-9 更多人工智能相關(guān)
第9章 分形圖的繪制:計(jì)算機(jī)生成藝術(shù)
計(jì)算機(jī)算法不僅僅可以用于計(jì)算求解,還可以用于藝術(shù)領(lǐng)域!分形藝術(shù)便是其中之一。在這一章中,我們將學(xué)習(xí)形形色色的分形圖的繪制方法,用代碼生成絢麗的圖案,幫助你實(shí)現(xiàn)藝術(shù)家的夢(mèng)想!
9-1 分形到底是什么鬼
9-2 遞歸繪制基礎(chǔ)
9-3 Vicsek 分形圖的繪制
9-4 為分形繪制添加交互
9-5 Sierpinski 分形繪制
9-6 Sierpinski 三角形
9-7 Koch雪花分形背后的數(shù)學(xué)分析
9-8 編寫(xiě)Koch雪花分形
9-9 利用分形繪制樹(shù)
第10章 看得見(jiàn)的算法,下季再見(jiàn)!
準(zhǔn)備這個(gè)選題的時(shí)候,我列出了可以講解的20余種應(yīng)用,之后挑選了難度適中且具有代表性的7個(gè)形成了現(xiàn)在的課程。算法的用處其實(shí)還多著呢。
1.軟件源碼推廣展示:目的展示軟件相關(guān)功能,接收技術(shù)學(xué)習(xí)者測(cè)試、測(cè)評(píng);
2.教程課程信息展示:展示課程信息,傳授課程各階段內(nèi)容;
3.設(shè)計(jì)素材圖片展示:展示素材設(shè)計(jì)理念、思維方式、傳播設(shè)計(jì)理念;
4.福利優(yōu)惠信息展示:分享各類(lèi)最新的福利信息,各種優(yōu)惠信息展示;
以上分享目的僅供學(xué)習(xí)、參考使用,請(qǐng)勿用于其他用途,如果想商業(yè)使用或者代理,請(qǐng)自行聯(lián)系版權(quán)方獲取授權(quán)。任何未獲取授權(quán)的商業(yè)使用與本站無(wú)關(guān),請(qǐng)自行承擔(dān)相應(yīng)責(zé)任。
本站不存儲(chǔ)任何資源文件,敬請(qǐng)周知!
如果您認(rèn)為本頁(yè)信息內(nèi)容侵犯了您的相關(guān)權(quán)益(包含但不限于:著作權(quán)、首發(fā)權(quán)、隱私權(quán)等權(quán)利),或者您認(rèn)為自己是此信息的權(quán)利人但是此信息不是自己發(fā)布的,可以直接版權(quán)舉報(bào)投訴,我們會(huì)根據(jù)網(wǎng)站注冊(cè)協(xié)議、資源分享協(xié)議等協(xié)議處理,以保護(hù)您的合法權(quán)益。
本網(wǎng)站采用 BY-NC-SA 協(xié)議進(jìn)行授權(quán) 轉(zhuǎn)載請(qǐng)注明原文鏈接:實(shí)戰(zhàn)玩轉(zhuǎn)算法7個(gè)經(jīng)典應(yīng)用詮釋算法精髓

侵權(quán)舉報(bào)/版權(quán)申訴



