pgm10_21.cpp

来自「此文件为网络书籍数据结构的面向对象方法的源码」· C++ 代码 · 共 39 行

CPP
39
字号
////   This file contains the C++ code from Program 10.21 of//   "Data Structures and Algorithms//    with Object-Oriented Design Patterns in C++"//   by Bruno R. Preiss.////   Copyright (c) 1998 by Bruno R. Preiss, P.Eng.  All rights reserved.////   http://www.pads.uwaterloo.ca/Bruno.Preiss/books/opus4/programs/pgm10_21.cpp//void BTree::InsertPair (Object& object, BTree& child){    unsigned int const index = FindIndex (object);    BTree& extraTree = InsertSubtree (index + 1, child);    Object& extraKey = InsertKey (index + 1, object);    if (++numberOfKeys == m)    {	if (parent == 0)	{	    BTree& left = *new BTree (m, *this);	    BTree& right = *new BTree (m, *this);	    left.AttachLeftHalfOf (*this);	    right.AttachRightHalfOf (*this, extraKey, extraTree);	    AttachSubtree (0, left);	    AttachKey (1, *key [(m + 1)/2]);	    AttachSubtree (1, right);	    numberOfKeys = 1;	}	else	{	    numberOfKeys = (m + 1)/2 - 1;	    BTree& right = *new BTree (m, *parent);	    right.AttachRightHalfOf (*this, extraKey, extraTree);	    parent->InsertPair (*key [(m + 1)/2], right);	}    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?