From 3969c1eb8167ac482ecba9b9e451b4a305390fde Mon Sep 17 00:00:00 2001 From: Zhang Peng Date: Fri, 6 Jul 2018 15:42:04 +0800 Subject: [PATCH] =?UTF-8?q?:bento:=20=E6=B7=BB=E5=8A=A0=E3=80=81=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E5=9B=BE=E7=89=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- images/database/B+TREE.png | Bin 0 -> 12517 bytes images/database/B-TREE.png | Bin 0 -> 8867 bytes .../带有顺序访问指针的B+Tree.png | Bin 0 -> 12985 bytes 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 images/database/B+TREE.png create mode 100644 images/database/B-TREE.png create mode 100644 images/database/带有顺序访问指针的B+Tree.png diff --git a/images/database/B+TREE.png b/images/database/B+TREE.png new file mode 100644 index 0000000000000000000000000000000000000000..2151e4fe278e9a40b77e25e93f82109bde45db11 GIT binary patch literal 12517 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 PO(0QI(o(FHw+#J178Oy# literal 0 HcmV?d00001 diff --git a/images/database/B-TREE.png b/images/database/B-TREE.png new file mode 100644 index 0000000000000000000000000000000000000000..6a16b449b12c8b8889ca39a527a6954fe0676d12 GIT binary patch literal 8867 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 KwOZLW;(q{&VC16! literal 0 HcmV?d00001