OJ现已增加邮箱找回密码功能,还没有绑定邮箱的同学们请抓紧时间,以免密码丢失无法找回


问题1197--链表的插入

1197: 链表的插入

时间限制: 1 Sec  内存限制: 128 MB
提交: 300  解决: 66
[提交] [状态] [讨论版] [命题人:]

题目描述


 单链表的插入是指在单链表的第pos-1个结点和第pos个结点之间插入一个新的结点
本题java实现结点类定义如下:
class Node<T> {
T data;
Node<T> next;
public Node(Node<T> n) {
next = n;
}
public Node(T obj, Node<T> n) {
data = obj;
next = n;
}
public T getData() {
return data;
}
public Node<T> getNext() {
return next;
}
}
java实现链表的类定义如下:
class linkList<T> {
private Node<T> head;
private int length;

public linkList() {}//构造一个空的链表
public Node<T> getHead() {}//获取链表头结点地址

}

根据上面给出的定义,写出函数add(T obj,int pos),表示在第pos-1个结点和第pos个结点之间插入一个新的结点
Java函数原型public boolean add(T obj,int pos)


C++:
给出链表的数据结构:
typedef struct LS{
  int v;
  struct LS *next;
}pL;
(头指针不含元素)
需要实现一个函数:
void _add(pL *head, int pos, int v);//在pos-1,pos之间插入一个数v

输入

第一行输入一个n(n<1000),表示单链表的长度,第二行输入单链表,第三行输入两个整数pos(pos<n),m,表示在第pos个位置插入m(保证输入是合法的)

输出

输出新增元素之后的顺序表

样例输入 Copy

5
1 2 3 4 5
3 6

样例输出 Copy

1 2 6 3 4 5

来源/分类