• <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>

            ArcTan

            dfs
            隨筆 - 16, 文章 - 117, 評論 - 6, 引用 - 0
            數據加載中……

            并查集基礎和的應用

            今天給SDUT的ACMer看了看并查集,總結總結下:
               并查集,干的就是“并”和“查”兩件事。很多與集合相關的操作都可以用并查集高效的解決。

                   int Find(int x)
                   {
                      if (tree[x].parent != x)
                      {
                          tree[x].parent = Find(tree[x].parent);
                      }
                      return tree[x].parent;
                   }

                   void Merge(int a, int b, int p, int q, int d)
                   {
                      if (tree[q].depth > tree[p].depth) tree[p].parent = q;
                      else
                      {
                          tree[q].parent = p;
                          if (tree[p].depth == tree[q].depth) tree[p].depth++;
                      }
                   }


                   其中Find()函數用了路徑壓縮優化,而Merge()函數用了啟發式合并的優化(個人感覺有了路徑壓縮,啟發式合并優化的效果并不明顯,而經常因為題目和代碼的限制,啟發式合并會被我們省略)。

                  有個問題,如何求節點到跟節點的距離?

             

            posted on 2012-07-26 19:28 wangs 閱讀(218) 評論(0)  編輯 收藏 引用 所屬分類: ACM-數據結構

            亚洲精品国精品久久99热| 国产精品毛片久久久久久久| 久久久无码一区二区三区| 亚洲一区中文字幕久久| 久久国产AVJUST麻豆| 人妻精品久久久久中文字幕69| 伊人久久精品无码二区麻豆| 国产999精品久久久久久| 久久狠狠爱亚洲综合影院| 国产香蕉97碰碰久久人人| 国内精品久久久久影院优| 久久综合给合久久国产免费 | 狠狠综合久久综合中文88| 国内精品久久久久久久久电影网| 久久99精品久久久久久不卡 | 青青草国产97免久久费观看| 亚洲精品乱码久久久久久按摩| 久久久久亚洲精品日久生情| 9999国产精品欧美久久久久久| 国产AⅤ精品一区二区三区久久| 情人伊人久久综合亚洲| 93精91精品国产综合久久香蕉 | 91亚洲国产成人久久精品| 久久久久免费视频| 亚州日韩精品专区久久久| 久久人妻少妇嫩草AV无码蜜桃| 超级碰碰碰碰97久久久久| 四虎久久影院| 一级做a爰片久久毛片16| 亚洲伊人久久综合影院| 88久久精品无码一区二区毛片| 国产成人AV综合久久| 亚洲国产精品综合久久一线| 亚洲精品国精品久久99热一| 久久99精品综合国产首页| 一本色道久久99一综合| 久久―日本道色综合久久| 久久SE精品一区二区| 日韩十八禁一区二区久久| 亚洲国产精品人久久| 国内精品免费久久影院|