java创建链表伪代码 java构建链表( 三 )


int val;
PNODE pHead = (PNODE)malloc(sizeof(NODE));
if (NULL == pHead)
{
printf("分配内存失败java创建链表伪代码!程序终止java创建链表伪代码!");
exit(-1);
}
PNODE pTail = pHead;
pTail-pNext = NULL;
printf("请输入要创建java创建链表伪代码的链表中节点的个数len=");
scanf("%d",len);
for (i=0;ilen;++i)
{
printf("请输入第%d个节点的有效数据:",i+1);
scanf("%d",val);
PNODE pNew = (PNODE)malloc(sizeof(NODE));
if (NULL == pNew)
{
printf("分配内存失败!程序终止!");
exit(-1);
}
pNew-data = https://www.04ip.com/post/val;
pTail-pNext = pNew;
pNew-pNext = NULL;
pTail = pNew;
}
return pHead;
}
void traverse_list(PNODE pHead)
{
PNODE p = pHead-pNext ;
while (NULL != p)
{
printf("%10d",p-data);
p = p-pNext;
}
printf("\n");
return ;
}
/*
在vc++6.0中的输出结果:
-----------
创建链表:
请输入要创建的链表中节点的个数len=3
请输入第1个节点的有效数据:1
请输入第2个节点的有效数据:2
请输入第3个节点的有效数据:3
遍历链表:
123
-----------------
*/
供你参考@呵呵
. java怎么创建链表java中创建链表java创建链表伪代码的例子java创建链表伪代码:
package zx;
class Link{
private Node root;
class Node{
private String name;
private Node Next;
public Node(String name){
this.name = name;
}
public String getName(){
return this.name;
}
public void addNode(Node newNode){
if(this.Next==null){
this.Next = newNode;
}else{
this.Next.addNode(newNode);
}
}
public void printNode(){
System.out.print(this.name + "--");
if(this.Next!=null){
this.Next.printNode();
}
}
};
public void add(String name){
Node newNode = new Node(name);
if(this.root==null){
this.root = newNode;
}else{
this.root.addNode(newNode);
}
}
public void print(){
if(this.root!=null){
this.root.printNode();
}
}
};
public class LinkDemo {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Link link = new Link();
link.add("根节点");
link.add("第一节点");
link.add("第二节点");
link.add("第三节点");
link.add("第四节点");
link.print();
System.out.println("null");
}
}
使用伪代码完成链表的创建,增加 删除 销毁操作定义链表结点:
typedef char ElemType;
typedef struct lnode
{datatype data;/*数据域*/
struct lnode *next;/*指针域*/
}SLink,*LinkList;
头插法建表
void CreateListF(LinkList *L,ElemTypea[], int n)
{LinkList *s;int i;
L = (LinkList *)malloc(sizeof( LinkList));L-next = NULL; // 先建立空的单链表
for ( i = 0;i n;i++){//若改为你叙述如此局改为:for(i = n-1; i =0; i--)
s= (LinkList *)malloc(sizeof(LinkList));
s-data=https://www.04ip.com/post/a[i];s-next =L-next;L-next = s;
}
} //T=O(n)
尾插法建表
void CreateListR(LinkList *L,char a[],int n) { LinkList*s,*r; int i;
L =(LinkList *)malloc(sizeof( LinkList));
L-next = NULL;r=L;
for(i=0;in;i++)
{ s=(LinkList*)malloc(sizeof(LinkList));
s–data=https://www.04ip.com/post/a[i];r-next=s;r=s;
}
r-next=NULL;
}//T=O(n)
插入运算
intInsElem(SLink *L, int i, ElemType x)
{ intj=1;SLink *p=L-next,*s;
if(i1||iGetLength(L)return 0;

推荐阅读