總體來講,假複習。回顧了筆記和演算法競賽入門的ppt和自己大二第一學期寫的演算法題,但都是大概去理解了下,感覺就像高中考數學似的,去看看概念,然後到考試之後啥都不會。儘管是假複習,但還是有點心得的。
三、演算法理解
1、動態規劃:自下而上,大問題分解為小問題,且大小問題有關聯。
例題:石子合併,割繩子,數塔問題等等
2、回溯法:可以放回+dsf
例題:迷宮,n皇后等等
3、貪心演算法:判斷是不是類似用最短的時間拿最多或者最少的東西
例題:單源最短路徑,旅遊商問題
4、遞迴:通過重複將問題分解為同類子問題而解決問題的方法
例題:n!,全排列,構建二叉樹
5、聯絡
①動態規劃,遞迴
與子問題是否相關
②動態規劃,回溯法
是否可以返回
6、數學
①10由5和2組成,算零個數
②判斷數字有無0到9,用除法運算和模運算
③圖問題,可以運用改變圖
④求餘問題,中國剩餘定理
⑤a和b的最小公倍數c和最大公因數d的關係:ab=cd
⑥輾轉相除法求得最大公因數
⑦與二進位制有關的問題可以用位運算解決,或|,與&,非~,異或^,位移《和》
⑧概率四、思維
計算機機思維是整體性思維
例:單源最短路徑算時,就算無路的也要算上去
全球變暖是乙個乙個迴圈下去
五、考試注意:
1、for(int i;)是錯誤的
2、注意資料規模
六、不足
1、演算法設計技術不行,一般一道題就是一天
七、函式
1、字串有關
標頭檔案①strlen
②strcat
③strcmp
④strcpy
2、數學
標頭檔案①sqrt
②abs
3、快速排序
標頭檔案
qsort(a,n,sizeof(a[0]),cmp)
cmp(const void * a,const void * b)
3、隨機函式
標頭檔案srand((unsigen)time(null))
rand()/(rand_max+1)
rand()%n
藍橋杯選拔
三重for迴圈列舉即可 這是一道dp題,設狀態dp i 為長度為i的完美字串,所以有 所以狀態轉移方程 dp i dp i 1 dp i 2 stl 將每個字串放入的集合set裡,然後輸出集合的大小即可。貪心,要這樣想,如果你們進行了m個回合,這m個回合你都贏了,且第i回合你出的牌為b1,b2,bm...
藍橋杯校內選拔賽C C 高職組
二項式的係數規律,我國數學家很早就發現了。如 圖1.png 我國南宋數學家楊輝1261年所著的 詳解九章演算法 一書裡就出現了。其排列規律 11 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 1 7 21 35 35 21 7 1 ...
第五屆藍橋杯校內選拔賽
輸入乙個字串,求它包含多少個單詞。單詞間以乙個或者多個空格分開。第乙個單詞前,最後乙個單詞後也可能有0到多個空格。比如 abc xyz 包含兩個單詞,ab c xyz 包含3個單詞。如下的程式解決了這個問題,請填寫劃線部分缺失的 注意 只填寫劃線部分的 不要填寫任何多餘的內容。比如已經存在的小括號,...