密码学——复杂度问题
生活随笔
收集整理的這篇文章主要介紹了
密码学——复杂度问题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
無論在密碼學當中還是在各種別的算法當中,復雜度分析都是一個比較重要的用來衡量算法效率的概念。首先說一下歐幾里得算法和擴展歐幾里得算法,無論歐幾里得算法還是擴展歐幾里得算法他們的復雜度相同的,是由同一個問題引申出來的——找到兩個數的最大公因數問題。歐幾里得算法也就是輾轉相除法。對于歐幾里得算法的復雜度問題之前一直不明白,現在知道每經過兩次相除,余數的位數必定會降低1位,由此得到的其復雜度為2lgn。在密碼學當中的復雜度衡量經常是按位來衡量的,比如說可能我們覺得一次加法的復雜度是O(1),可是當按位衡量時就跟操作數位數有關了,例如說一個512位的數加法就是O(512),(這里的O應該是按位算的O,Ob)。如何比較形式的表示加法,減法,乘除的復雜度呢,就是加法和減法相同為O(lga),而乘除就是O(lga平方),既然對于歐幾里得算法和擴展歐幾里得算法要做2lga次,那么就可以得到歐幾里得和擴展歐幾里得算法的復雜度是O(lga的立方)。但是根據歐幾里得算法本身的特點,其算法的復雜度可以降低到O(lga的平方),盡管說與乘除在一個量級上,但是還是要比乘除的時間要長的,畢竟歐幾里得算法是由除法或者模運算構成的。
總結
以上是生活随笔為你收集整理的密码学——复杂度问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电容笔和触屏笔一样吗?ipad平替电容笔
- 下一篇: 汽车喇叭E-mark认证详情