国产成人v爽在线免播放观看,日韩欧美色,久久99国产精品久久99软件,亚洲综合色网站,国产欧美日韩中文久久,色99在线,亚洲伦理一区二区

學(xué)習(xí)啦 > 學(xué)習(xí)方法 > 通用學(xué)習(xí)方法 > 學(xué)習(xí)計劃 > acm學(xué)習(xí)計劃

acm學(xué)習(xí)計劃

時間: 芳琪1092 分享

acm學(xué)習(xí)計劃

  進(jìn)了ACM之后感覺不知道方向,好像什么都不會什么都該學(xué),但又不知道該從哪里學(xué)起,下面是學(xué)習(xí)啦小編為你搜集到的acm學(xué)習(xí)計劃。希望對你有所幫助。

  acm學(xué)習(xí)計劃

  第一階段:

  練經(jīng)典常用算法,下面的每個算法給我打上十到二十遍,同時自己精簡代碼,

  因為太常用,所以要練到寫時不用想,10-15分鐘內(nèi)打完,甚至關(guān)掉顯示器都可以把程序打

  出來.

  1.最短路(Floyd、Dijstra,BellmanFord)

  2.最小生成樹(先寫個prim,kruscal要用并查集,不好寫)

  3.大數(shù)(高精度)加減乘除

  4.二分查找. (代碼可在五行以內(nèi))

  5.叉乘、判線段相交、然后寫個凸包.

  6.BFS、DFS,同時熟練hash表(要熟,要靈活,代碼要簡)

  7.數(shù)學(xué)上的有:輾轉(zhuǎn)相除(兩行內(nèi)),線段交點、多角形面積公式.

  8. 調(diào)用系統(tǒng)的qsort, 技巧很多,慢慢掌握.

  9. 任意進(jìn)制間的轉(zhuǎn)換

  第二階段:

  練習(xí)復(fù)雜一點,但也較常用的算法。

  如:

  1. 二分圖匹配(匈牙利),最小路徑覆蓋

  2. 網(wǎng)絡(luò)流,最小費用流。

  3. 線段樹.

  4. 并查集。

  5. 熟悉動態(tài)規(guī)劃的各個典型:LCS、最長遞增子串、三角剖分、記憶化dp

  6.博弈類算法。博弈樹,二進(jìn)制法等。

  7.最大團(tuán),最大獨立集。

  8.判斷點在多邊形內(nèi)。

  9. 差分約束系統(tǒng).

  10. 雙向廣度搜索、A*算法,最小耗散優(yōu)先.

  第三階段:

  前兩個階段是打基礎(chǔ),第三階段是鍛煉在比賽中可以快速建立模型、想新算法

  。這就要平時多做做綜合的題型了。

  1. 把oibh上的論文看看(大概幾百篇的,我只看了一點點,呵呵)。

  2. 平時掃掃zoj上的難題啦,別老做那些不用想的題.(中大acm的版主經(jīng)常說我挑簡單的來

  做:-P )

  3. 多參加網(wǎng)上的比賽,感受一下比賽的氣氛,評估自己的實力.

  4. 一道題不要過了就算,問一下人,有更好的算法也打一下。

  5. 做過的題要記好 :-)

  (一)

  不可能都完全記住那么多的算法.

  常用算法,拿過來就可以寫出來

  不常用的,拿起書來,看10分鐘,就能理解算法(因為以前記過).

  對以前沒有記過的算法,就不好說了,難的可能要研究好幾天.

  這樣就可以了.

  應(yīng)該熟練掌握的常用的算法應(yīng)該有:

  各種排序算法(插入排序、冒泡排序、選擇排序,快速排序,堆排序,歸并排序)

  線性表(一般的線性表,棧,隊列)的插入和刪除

  二叉樹的遍歷(前序,中序,后序)

  圖的遍歷(深度優(yōu)先,廣度優(yōu)先)

  二分法查找,排序二叉樹,Hash查找(處理沖突的方法)。

  (二)

  分析一個東西,你可以用不同的眼光去看待,有很多時候,就跟自己生活一樣,覺得小時候看待問題很幼稚,現(xiàn)在看問題全面了,而且方式不一樣了,為什么,就是成長吧,就跟這個一樣的,你對算法,比如寫一個程序,可能直接寫很簡單,可是可以有一些有趣的方式,比如通過什么樣來表達(dá),怎么樣更高效..等等吧

  (三)

  于大學(xué)里把基本的專業(yè)課學(xué)扎實就ok,如:數(shù)據(jù)結(jié)構(gòu),離散,操作系統(tǒng)等。碰到一些基本的數(shù)據(jù)結(jié)構(gòu)和算法,如查找排序要根據(jù)原理馬上能寫出相應(yīng)的代碼就行了,我個人是這樣理解的,對于更深層次的東西,也是建立在自己熟練的基礎(chǔ)之上的吧

  (四)

  算法與數(shù)據(jù)結(jié)構(gòu)考驗試題精析》第2版 機械工業(yè)出版社

  如果你想練習(xí)的話,這里有N多的題可以來練習(xí),但實際中能用到的比較少,除非搞一些高端的玩意,不過平時也可以在自己的項目中結(jié)合使用

  (五)

  數(shù)據(jù)結(jié)構(gòu)在平時可能用不上,但數(shù)據(jù)結(jié)構(gòu)可以培養(yǎng)你程序時如果注意效率的意識,一個學(xué)過數(shù)據(jù)結(jié)構(gòu)的人和一個沒有學(xué)過數(shù)結(jié)構(gòu)的人寫出來的程序可能在效率上有差別。

  (六)

  搞ACM需要的掌握的算法.

  要注意,ACM的競賽性強,因此自己應(yīng)該和自己的實際應(yīng)用聯(lián)系起來.

  適合自己的才是好的,有的人不適合搞算法,喜歡系統(tǒng)架構(gòu),因此不要看到別人什么就眼紅,

  發(fā)揮自己的長處,這才是重要的.

  同時由于個人練習(xí)的時候可能有些偏向性,可能上面的總結(jié)不是很全,還請大家提出和指正,而且由于ACM的題目中專門針對某個算法的題目可能比較少出現(xiàn),所以上面的分類中的題有可能有多種解法或者是一些算法的綜合,這都不會影響大家做題,希望練習(xí)的同學(xué)能夠認(rèn)真,扎實地訓(xùn)練,做到真正的理解算法,掌握算法.同時在論壇上還有許多前輩的分類,總結(jié),大家也可以按自己的情況采用.注意FTP上有很多的資料,希望大家好好地利用.

  如果同學(xué)能在明年暑假前能掌握上面大部分算法,那你也基本上達(dá)到了訓(xùn)練的目的,到暑假的時候你就可以選擇自己比較喜歡的方面進(jìn)行加深和強化,而且同學(xué)們不要覺得看算法的證明是很麻煩的事,這可以加強你的思維能力,這在ACM中也很重要.同時也希望老隊員能幫助我整理習(xí)題和題目分類.同時ACM的題目是沒有范圍的,只能在平時中多積累多練習(xí),多比別人多努力一點,你就會比別人多一線希望.

  先掌握搜索,動態(tài)規(guī)劃,貪心這些思想方法

  然后學(xué)習(xí)各種技巧

熱門文章

3593129