📄 pgm10_19.txt
字号:
//// This file contains the C# code from Program 10.19 of// "Data Structures and Algorithms// with Object-Oriented Design Patterns in C#"// by Bruno R. Preiss.//// Copyright (c) 2001--2002 by Bruno R. Preiss, P.Eng. All rights reserved.//// http://www.brpreiss.com/books/opus6/programs/pgm10_19.txt//public class MWayTree : AbstractTree, SearchTree{ protected ComparableObject[] key; protected MWayTree[] subtree; public virtual void Withdraw(ComparableObject obj) { if (IsEmpty) throw new ArgumentException("object not found"); int index = FindIndex(obj); if (index != 0 && obj == key[index]) { if (!subtree[index - 1].IsEmpty) { ComparableObject max = subtree[index - 1].Max; key[index] = max; subtree[index - 1].Withdraw(max); } else if (!subtree[index].IsEmpty) { ComparableObject min = subtree[index].Min; key[index] = min; subtree[index].Withdraw(min); } else { --count; int i; for (i = index; i <= count; ++i) { key[i] = key[i + 1]; subtree[i] = subtree[i + 1]; } key[i] = null; subtree[i] = null; if (count == 0) subtree[0] = null; } } else subtree[index].Withdraw(obj); } // ...}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -