<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ### 2.4.1 跳躍表的結構 跳躍表由 `server.h/zskiplist` 和 `server.h/zskiplistNode` 定義: ```c // 跳躍表結點 typedef struct zskiplistNode { sds ele; // 成員對象 double score; // 結點按照各自的分值從小到大排序 struct zskiplistNode *backward; // 后退指針,用于從表尾向頭遍歷 struct zskiplistLevel { // 層 struct zskiplistNode *forward; // 前進指針 unsigned long span; // 跨度 } level[]; } zskiplistNode; // 跳躍表 typedef struct zskiplist { struct zskiplistNode *header, *tail; // 表頭表尾結點 unsigned long length; // 結點長度 int level; // 最大層數 } zskiplist; ``` - 層:level數組包含多個元素,每個元素包含指向其他結點的指針 - 理論上層的數量越多,訪問其他結點的速度越快 - 每次創建一個新結點時,程序都根據冪次定律(越大的數出現的概率越小)隨機生成一個介于1到32的數作為level數組的大小 - 前進指針:用于從頭到尾遍歷 - 跨度:記錄兩個結點之間的距離,用于計算排位(rank) - 跨度越大,相距越遠 - 指向NULL的所有前進指針跨度都是0 - 后退指針:用于從后向前遍歷 - 分值和成員: - 表中所有結點都按照分值(score)進行從小到大的排序 - 成員對象(ele)是一個SDS類型,必須唯一
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看