爱问知识人 爱问教育 医院库

求教一个单链表小程序的编写,谢谢

首页

求教一个单链表小程序的编写,谢谢

用JAVA编写,完成单链表的生成,任意位置的插入、删除,以及确定某一元素在单链表中的位置。
① 输入的形式和输入值的范围:插入元素时需要输入插入的位置和元素的值;删除元素时输入删除元素的位置;查找操作时需要输入元素的值。在所有输入中,元素的值都是整数类型。
② 输出的形式:在所有三种操作中都显示操作是否正确以及操作后单链表的内容。其中删除操作后显示删除的元素的值,查找操作后显示要查找元素的位置。
③ 程序所能达到的功能:完成单链表的生成(通过插入操作)、插入、删除、查找操作。
(④ 测试数据:
A. 插入操作中依次输入11,12,13,14,15,16,生成一个单链表
B. 查找操作中依次输入12,15,22返回这3个元素在单链表中的位置
C. 删除操作中依次输入2,5,删除位于2和5的元素
[基本要求]用链式存储结构实现存储)
要求:链式存储结构不是随机存储结构,即不能直接取到单链表中某个结点,而要从单链表的头结点开始一个一个地寻找,比较给定键值,确定查找位置,再进行相关操作。

提交回答
好评回答
  • 2011-03-21 21:43:12
      由于java没有指针,所以通常用数组来实现。那么数组下表就成了位置。如果非要链式,那么久只能直接用类对象来代替指针对象了。
    如果节点类形式
    public Node
    {
    public 属性1;
    public 属性2;
    public Node next;  // 这个就和c/c++不一样了,c的话应该是node*next
    }
    然后定义一个链类
    如:
    public List
    {
    public List head;
    public List tail;
    public 操作1;
    public 操作2;
    }
    由于插删改需要和位置挂钩,所以链表操作的时候定义一个整型变量来计数。
       如查询: Node GetDataFromList(int pos) { int i = 0; Node p; p = head; while(i<=pos) { if(i==pos) return p; else i++; p = xt; } return null; } 。
      

    L***

    2011-03-21 21:43:12

类似问题

换一换
  • 软件 相关知识

  • 电脑网络技术
  • 电脑网络

相关推荐

正在加载...
最新资料 推荐信息 热门专题 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):