package Tree234;public class Node {private static final int ORDER = 4; //最多四个子节点private int numItems = 0;private Node parent;private Node childArray[] = new Node[this.ORDER]; //子节点集合private DataItem itemArray[] = new DataItem[this.ORDER-1]; //当前节点存储数据项/*** 连接子节点* @param childNum* @param child*/public void connectChild(int childNum,Node child) {this.childArray[childNum] = child;if(child != null) {child.parent = this;}}/*** 取消链接子节点* @param childNum* @return*/public Node disconnectChild(int childNum) {Node tempNode = this.childArray[childNum];this.childArray[childNum] = null;return tempNode;}/*** 获取子节点* @param childNum* @return*/public Node getChild(int childNum) {return this.childArray[childNum];}/*** 获取父节点* @return*/public Node getParent() {return this.parent;}/*** 当前节点是否是叶节点* @return*/public boolean isLeaf() {return (this.childArray[0] == null) ? true : false;}/*** 返回节点数* @return*/public int getNumItems() {return this.numItems;}/*** 获取数据项* @param index* @return*/public DataItem getDataItem(int index) {return this.itemArray[index];}/*** 节点数据项是否已满* @return*/public boolean isFull() {return (this.numItems == this.ORDER-1) ? true : false;}/*** 查找某个数据项* @param key* @return*/public int findItem(long key) {for(int i=0;i<this.ORDER-1;i++) {if(this.itemArray[i] == null)break;else if(this.itemArray[i].dData == key)return i;}return -1;}public int insertItem(DataItem newItem) {this.numItems++; //节点数据项+1long newKey = newItem.dData;for(int j=this.ORDER-2;j>=0;j--) {if(this.itemArray[j] == null) {continue;}else {long itsKey = this.itemArray[j].dData;if(newKey < itsKey) {this.itemArray[j+1] = this.itemArray[j];}else {this.itemArray[j+1] = newItem;return j+1;}}}this.itemArray[0] = newItem;return 0;}public DataItem removeItem() {DataItem temp = this.itemArray[this.numItems-1];this.itemArray[--this.numItems] = null;return temp;}public void displayNode() {for(int j=0;j<this.numItems;j++) {this.itemArray[j].displayItem();}System.out.println("/");}}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。