Ⅰ 高中生能看懂演算法導論嗎
演算法導論不是一本noi參賽選手應該看的書。理論性太強,學得慢、而且演算法不夠深刻。如果你只學習了語言,那麼ls推薦的《演算法藝術》也不適用,你想參加的應該是noip,noi是在noip上一個層次的全國比賽,到了noi水平應該看的是演算法藝術而不是演算法導論,《演算法藝術》在當當網上有買
不過現在關於noip的書幾乎都是用pascal語言寫的,我當時學的時候也是用pascal,現在轉了c++。所以我推薦的書都是pascal寫的。。。《奧賽經典》和《全國青少年信息學奧林匹克教程》,如果你不習慣,可以選擇買大學的acm教程來看(acm是大學生的全球性信息學競賽,大學生幾乎都用c、c++或者java,書多用c和c++寫),配套做poj(1l推薦的那個網站~)
另外你可以關注一下noi、noip競賽官網 http://www.noi.cn
還有oier經常去的網站 www.oibh.org/bbs 可以上去問題、找資料
ps,數學知識也很重要,其他文化科可以放,數學已經要跟上~
祝成功~
Ⅱ 最近打算看演算法導論,在如何看方面有什麼好的建議
演算法導論,不適合入門,建議有數據結構和高等數學基礎再讀
這書上面有些內容太難了,剛開始不適合全看,挑些自己能看懂的來學。
很適合演算法初學者體會演算法的魅力.這本書講解的很全面.演算法都用偽碼實現.對編程語言要求不高.書的前幾章是一些數學和概率基礎和演算法分析的一些說明.後面幾章是一些演算法的描述.對NP問題感興趣的話.可以看看這本書的VII部分中的NP-Completeness.我覺得這本書比較好的一部分是它的附錄部分.對前面的一些背景知識公式進行了詳細的闡述和證明以及一些專有名詞進行了索引方便檢索.這本書在國內目前只有英文版的.但南大有個中文版的(不過他們太無恥了居然說是他們自己編著)我看了那個版本的.其實是第一版的中文翻譯叫<現代計算機常用數據結構和演算法>.其他的我想我不需要多說了.有興趣的可以去體會一下,
Ⅲ 請教演算法導論這本書怎麼樣適合什麼程度的學習者
適合了解一門或以上編程語言的人,即使你沒學過數據結構也沒關系,因為它把數據結構中的演算法從基礎到非常深入全部都包括了,個人建議你先把C語言用熟悉了,然後再去看,演算法導論,如果有決心看完,數據結構都不用看,因為你看完演算法導論,就等於學會了非常高級的數據結構,但是看完很難。。。
至於C++,可以順帶著學一下,然後用C++自己把演算法實現一下,等於練兩倍。
也不一定非得學C++,可以學習Java或者C#,看你的發展方向
Ⅳ 演算法導論上31章數論演算法的證明題
由ed=1(mod φ(n)),可設 ed = k*φ(n)+1,k∈Z
由e = 3,0<d<φ(n)得:0<ed<3*φ(n)
因此 0 < k*φ(n)+1 < 3*φ(n),0<k<3,k=1或2
即 ed = φ(n)+1 或 ed = 2φ(n)+1,φ(n) = ed-1或φ(n) = 2ed-1
現已知φ(n)=(p-1)(q-1)和n=pq
可求得 p+q=n+1-φ(n)
即 p,q 是方程 x² - (n+1-φ(n)) x + n = 0的兩根
可解得:p,q = ((n+1-φ(n) ± √((n+1-φ(n))²-4n)) / 2
以上計算僅涉及n, d, e的有限次加減乘除和開方運算。
每種運算都能夠在關於n的位數的多項式時間內完成。
(設n的位數是d,加減法和除2運算可在O(d)時間內完成,乘法可在O(d²)時間內完成,
開方模擬手算也可以在O(d²)時間內完成)
因此能夠在關於n的位數的多項式時間內對Alice的模n進行分解。