• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 183,  comments - 10,  trackbacks - 0

            :: 和同學聊了起來
            =======================
            信息論的角度去討論算法
            一個算法的高效不高效
            看它產生的信息量有多大
            如果有冗余的信息量,效率就有提高的空間

            舉個例子
            你統計一個集合中重復出現的元素
            那么久沒有必要對元素計數
            直觀的方法是對元素計數
            然后檢測
            但是這個計數是冗余的
            只需要找到重復的,不需要知道具體出現的次數
            針對這個問題

            我是覺得最高效的算法應該是恰恰能解決現有問題的算法,不生成多余的冗余信息
            生成任何信息都是需要代價的
            信息論。。。
            算法的高效不高效,一是時間二是空間
            上面那個問題,既然不需要計數
            只需要給每個元素一個位,節省空間
            位圖
            海量數據的時候
            如果 幾十億個 int 數
            看里面是否存在重復的
            重復出現的時候,檢測到對應為為 1 ,說明之前存在了
            所以就是重復出現的數
            遍歷這個集合
            可以將結果存起來
            我的意思是,這個問題就是找到重復出現的,沒有必要對每個數計數
            這樣,就可以節省空間

            還有時間的
            還有就是充分挖掘問題中的信息
            充分利用問題中的信息,提高獲取的信息量,充分利用了隱藏的信息量就會涉及出高效的算法
            基于比較的算法,不會是 O(N) 的,最優就是 O(NlogN)。
            基數排序、桶排序,這樣的就是有限制性的算法,這個限制就是元素有個范圍,限制是給了隱含的信息,利用這個可以就有了 O(N) 的排序
            盡可能從問題中挖掘潛在的信息,獲得的信息越多越有利于解決問題,也就越有可能獲得高效的解法。

            控制論、系統論、信息論
            信息論是香農創建的,也屬于數學,算法就是解決問題的,解決問題的就是想得到結果,結果就是一種信息,算法的設計可以用信息論的角度解釋
            反正總結起來是兩點吧,一是充分挖掘已有的信息,二是盡可能不要產生冗余信息。這樣設計的算法,既可以利用以存在的信息,也不會產生多余的信息,效率自然會高。

            ======================

            FOO 21:57:39
            信息論的角度去討論算法
            FOO 21:57:57
            一個算法的高效不高效
            FOO 21:58:09
            看它產生的信息量有多大
            FOO 21:58:36
            如果有冗余的信息量,效率就有提高的空間
            BAR 22:00:18

            FOO 22:00:53
            呵呵
            FOO 22:01:05
            后面的幾句是我最近感受的
            BAR 22:01:11
            呵呵
            BAR 22:01:14
            我不懂
            FOO 22:01:17

            BAR 22:01:20
            我還是碼農級別的
            FOO 22:01:23

            FOO 22:01:27
            舉個例子
            FOO 22:01:57
            你統計一個集合中重復出現的元素
            FOO 22:02:10
            那么久沒有必要對元素計數
            FOO 22:02:16
            直觀的方法是對元素計數
            FOO 22:02:27
            然后檢測
            FOO 22:02:38
            但是這個計數是冗余的
            FOO 22:02:51
            只需要找到重復的,不需要知道具體出現的次數
            FOO 22:02:55
            針對這個問題
            BAR 22:03:28

            BAR 22:04:14
            你繼續
            BAR 22:04:11
             
            FOO 22:04:24
            我是覺得最高效的算法應該是恰恰能解決現有問題的算法,不生成多余的冗余信息
            FOO 22:04:33
            生成任何信息都是需要代價的
            FOO 22:04:36
            信息論。。。
            BAR 22:04:41
            你先說上面那個問題
            FOO 22:06:05
            算法的高效不搞笑,一是時間二是空間
            FOO 22:06:14
            上面那個問題,既然不需要計數
            BAR 22:06:20
            上面那個問題什么方法好?
            FOO 22:06:29
            只需要給每個元素一個位,節省空間
            FOO 22:06:43
            位圖吧
            FOO 22:06:44
            呵呵
            BAR 22:06:50
            那你怎么做
            FOO 22:06:51
            海量數據的時候
            FOO 22:07:00
            如果 幾十億個 int 數
            BAR 22:07:08
            把位置1
            BAR 22:07:14
            第二次出現呢
            FOO 22:07:15
            看里面是否存在重復的
            BAR 22:07:20
            也就是重復的時候出現呢
            BAR 22:07:00
            一個元素出現了一次
            FOO 22:07:53
            重復出現的時候,檢測到對應為為 1 ,說明之前存在了
            BAR 22:08:00
            是撒
            FOO 22:08:03
            所以就是重復出現的數
            BAR 22:08:05
            你只找一個么
            FOO 22:08:11
            所有
            BAR 22:08:17
            還是說你有另一個輸出結果的地方
            FOO 22:08:22
            遍歷這個集合
            FOO 22:08:36
            可以將結果存起來
            BAR 22:08:41
            就是出現重復的時候把這個重復的放到另外一個地方或者輸出
            FOO 22:09:07

            BAR 22:09:22
            恩,我先洗澡去了
            FOO 22:09:31
            我的意思是,這個問題就是找到重復出現的,沒有必要對每個數計數
            FOO 22:09:36
            這樣,就可以節省空間
            FOO 22:09:51
            還是時間的
            FOO 22:14:58
            還有就是充分挖掘問題中的信息
            FOO 22:15:38
            充分利用問題中的信息,提高獲取的信息量,充分利用了隱藏的信息量就會涉及出高效的算法
            FOO 22:16:11
            基于比較的算法,不會是 O(N) 的,最優就是 O(NlogN)。
            FOO 22:17:09
            基數排序、桶排序,這樣的就是有限制性的算法,這個限制就是元素有個范圍,限制是給了隱含的信息,利用這個可以就有了 O(N) 的排序
            FOO 22:17:37
            盡可能從問題中挖掘潛在的信息,獲得的信息越多越有利于解決問題,也就越有可能獲得高效的解法。

            FOO 22:18:04
            呵呵
            FOO 22:18:23
            控制論、系統論、信息論
            FOO 22:19:47
            信息論是香農創建的,也屬于數學,算法就是解決問題的,解決問題的就是想得到結果,結果就是一種信息,算法的設計可以用信息論的角度解釋,呃。。
            FOO 22:21:24
            反正總結起來是兩點吧,一是充分挖掘已有的信息,二是盡可能不要產生冗余信息。這樣設計的算法,既可以利用以存在的信息,也不會產生多余的信息,效率自然會高。

             

            posted on 2011-07-11 23:18 unixfy 閱讀(205) 評論(0)  編輯 收藏 引用
            久久久精品国产免大香伊 | 91久久精品国产91性色也| 91精品观看91久久久久久 | 99久久久久| 99久久精品免费看国产一区二区三区 | 区久久AAA片69亚洲| 国产精品久久久久久久久鸭| 久久综合精品国产一区二区三区 | 性高湖久久久久久久久| 久久99精品久久久久久秒播| 亚洲欧美日韩中文久久| 久久夜色精品国产亚洲av| 国产精品一久久香蕉国产线看| 久久久久久亚洲精品影院| www.久久99| 亚洲AV无码久久精品狠狠爱浪潮| 老司机午夜网站国内精品久久久久久久久| 久久水蜜桃亚洲av无码精品麻豆| 日本久久久久久久久久| 久久久精品波多野结衣| 精品久久久久久久| 久久超碰97人人做人人爱| 丁香色欲久久久久久综合网| 伊人色综合久久天天网| 久久久精品无码专区不卡| 伊人色综合久久| 97精品伊人久久大香线蕉app| 亚洲中文字幕久久精品无码APP | 久久91精品国产91久久户| 69久久精品无码一区二区| 少妇内射兰兰久久| 久久久久久久97| 久久精品国产91久久综合麻豆自制 | 亚洲国产精品无码久久SM| 亚洲日本va中文字幕久久| 亚洲欧美成人综合久久久| 久久一日本道色综合久久| 久久久无码精品亚洲日韩蜜臀浪潮| 亚洲AV无码久久精品成人| 国产精品久久久久…| 国产ww久久久久久久久久|