图的创建、遍历及应用.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
图的创建、遍历及应用

结点类 package ch06; public class Node { private Object data; // 存放结点值 private Node next; // 后继结点的引用 // 无参数时的构造函数 public Node() { this(null, null); } //带一个参数时的构造函数 public Node(Object data) { // 构造值为data的结点 this(data, null); } //带两个参数时的构造函数 public Node(Object data, Node next) { this.data = data; this.next = next; } public Object getData() { return data; } public void setData(Object data) { this.data = data; } public Node getNext() { return next; } public void setNext(Node next) { this.next = next; } } 栈的抽象接口类 package ch06; public interface IStack { public void clear(); public boolean isEmpty(); public int length(); public Object peek(); public void push(Object x) throws Exception; public Object pop(); } 链栈类 package ch06; import ch06.Node; public class LinkStack implements IStack{ private Node top; //栈顶元素的应用 //将栈置空 public void clear(){ top=null; } //判断栈是否为空 public boolean isEmpty(){ return top == null; } //求链栈的长度 public int length(){ Node p = top; //初始化,p指向栈顶元素,length为计数器 int length = 0; while (p!=null){ //从栈顶元素开始向后查找,直到p指向空 p=p.getNext(); // p指向后继结点 ++length; //长度增加1 } return length; } //取栈顶元素并返回其值 public Object peek(){ if(!isEmpty()) //栈非空 return top.getData(); //返回栈顶元素的值 else return null; } //入栈 public void push(Object x){ Node p = new Node(x); //构造一个新结点 p.setNext(top); top = p; //新结点成为当前的首结点 } //出栈 public Object pop(){ if(isEmpty()){ return null; } else{ Node p = top; //p指向被删除的结点(栈顶结点) top = top.getNext(); //修改链指针,使栈顶结点从链栈中移去 return p.getData(); //返回栈顶结点的数据域的值 } } //输出栈中所有数据元素(从栈顶元素到栈底元素) public void display(){ Node p = top; //初始化,p指向栈顶元素 while (p!= null){ /

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档