之前我分享過乙個資料結構與演算法的課程,很多小夥伴私信我問有沒有python版。
看了一些公開課後,今天特向大家推薦北京大學的這門課程:《資料結構與演算法python版》。
很多同學想要轉行機器學習,也確實掌握了一些機器學習模型原理並具備基礎的程式設計功底,但是在筆試、面試的時候還會掉鍊子,大概率是資料結構和演算法知識薄弱。資料結構和演算法是程式設計師的內功心法和基本功。無論是人工智慧還是其它電腦科學領域,掌握紮實的資料結構和演算法知識,往往會助力不少!
北京大學公開課《資料結構與演算法python版》,面向具有python語言程式設計基礎的大學生和社會公眾,介紹常見的基本資料結構以及相關經典演算法,強調問題-資料-演算法的抽象過程,關注資料結構與演算法的時間空間效率,培養學生編寫出高效程式,從而解決實際問題的綜合能力。
這門課程在中國大學mooc正在進行第二次開課,已進行至第五周,心急的同學也可以直接看第一次開課的完整版,變化不大。
慕課:b站:
本課程主講是陳斌老師,陳老師是北京大學地球與空間科學學院教師,博士,副教授,碩士生導師。主講本科生課程《資料結構與演算法(python版)》、《離散數學》等等。
大家可以去b站圍觀陳斌老師的直播答疑
pdf版:
浙江大學公開課 資料結構第一講筆記
問題1 複雜度1最大子列和問題 給定kk 個整數組成的序列,連續子列 被定義為n i 1 n jn j 其中 1 le i le j le k1 i j k。最大子列和 則被定義為所有連續子列元素的和中最大者。例如給定序列,其連續子列有最大的和20。現要求你編寫程式,計算給定整數序列的最大子列和。本...
大學課程資料結構與演算法複習
資料結構之陣列和鍊錶的區別 演算法的時間與空間複雜度 資料結構與演算法是計算機專業必修的一門課 在工作中,免不了要面對一些複雜的業務邏輯,可能有多種方法實現,每種方式的執行效率也可能都不一樣,好的資料結構與演算法能提公升效率,具體體現在時間和空間上 比如,現在有一萬個人,要找出姓名叫張三的人,最簡單...
中國大學MOOC 資料結構與演算法 OJ 1
題目內容 一開始給出了乙個由小寫字母組成的字串 s。我們規定每次移動中,選擇最左側的字母,將其從原位置移除,並加到字串的末尾。這樣的移動可以執行任意多次。返回我們移動之後可以擁有的最小字串 注 在python3中,字串的大小可用不等號比較 輸入格式 s。s為僅含有小寫字母的字串,長度不超過10000...