高分求教什么是链表,谢谢各位!

问题描述

我想请教什么是链表,我有一些编程的基础,我了解数组,但是链表这个东东我实在是搞不懂,能否请各位给举个例子,或用一些代码来实现,在下高分求教,多谢~~~顺便问下:我今天刚刚注册,是朋友推荐的。怎么我在发帖时的“帖子问题点数”这一栏只能给“0”分呢?我明明有200可用分呀。

解决方案

解决方案二:
链表是数据结构讲的东西,表示数据的存储方式,建议找找数据结构相关的书籍。
解决方案三:
楼主,学过数据结构吗?呵呵,看下吧
解决方案四:
是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。  相比较顺序结构,链表比较方便插入和删除操作。  线性表的链式存储表示的特点是用一组任意的存储单元存储线性表的数据元素(这组存储单元可以是连续的,也可以是不连续的)。因此,为了表示每个数据元素与其直接后继数据元素之间的逻辑关系,对数据元素来说,除了存储其本身的信息之外,还需存储一个指示其直接后继的信息(即直接后继的存储位置)。由这两部分信息组成一个"结点"(如下图所示),表示线性表中一个数据元素。=====================================================  三个链表函数(C语言描述)  #include<stdio.h>  #include<stdlib.h>  structNode{  intdata;//数据域  Node*next;//指针域  };  /**************************************************************************************  *函数名称:insert  *函数功能:在连表中插入元素.  *输入:head链表头指针,p新元素插入位置,x新元素中的数据域内容  *输出:无  *************************************************************************************/  voidinsert(Node*head,intp,intx){  Node*tmp=head;  for(inti=0;i<p;i++){  tmp=tmp->next;  if(tmp==NULL)return;  }  Node*tmp2=newNode;  tmp2->data=x;  tmp2->next=tmp->next;  tmp->next=tmp2;  }  /**************************************************************************************  *函数名称:del  *函数功能:删除链表中的元素  *输入:head链表头指针,p被删除元素位置  输出:被删除元素中的数据域.如果删除失败返回-1  **************************************************************************************/  intdel(Node*head,intp){  Node*tmp=head;  for(inti=0;i<p;i++){  tmp=tmp->next;  if(tmp==NULL)return-1;  }  intret=tmp->next->data;  tmp->next=tmp->next->next;  returnret;  }  voidprint(Node*root){  for(Node*tmp=head;tmp!=NULL;tmp=tmp->next)  printf("%d",tmp->data);  printf("n");  }  intmain(){  Node*head;  head=newNode;  head->data=-1;  return0;  }  *****************************************************************************欢迎使用CSDN论坛专用阅读器:CSDNReader(附全部源代码)http://feiyun0112.cnblogs.com/
解决方案五:
上面给出了C语言下面就给出java/***@(#)MyLinkedList.java**自定义的LinkedList*@author*@version1.002009/10/12*///节点类classNode{//数据区域publicObjectdata;//地址区域publicNodenext;publicNode(){}publicNode(Objectdata){this.data=data;}}publicclassMyLinkedList{//头节点privateNodeheader;//尾节点privateNodetailer;//记录当前元素个数privateintsize;publicMyLinkedList(){header=newNode();header.next=header;tailer=header;size=0;}publicintsize(){returnsize;}//将指定元素追加到此列表的结尾。publicvoidadd(Objecto){//1.出现一个新的节点NodenewNode=newNode(o);//2.原尾节点指向新的节点tailer.next=newNode;//3.新节点称为新的尾节点tailer=newNode;size++;}//返回此列表中指定位置处的元素。publicObjectget(intindex){//指定当前元素索引号intcount=0;//设定游标NodecurrentNode=header;Objectobj=null;for(inti=0;i<size;i++){//1.当前游标移动一个位置currentNode=currentNode.next;if(count==index){//如果当前的索引等于指定的索引号obj=currentNode.data;break;}count++;}returnobj;}}

时间: 2024-09-08 17:41:02

高分求教什么是链表,谢谢各位!的相关文章

java菜鸟真心求教大神,谢谢!!!!

问题描述 java菜鸟真心求教大神,谢谢!!!! 我是大三学生,在学校有学些java的基础语言,想要深入学习java,请教大神分享心得 解决方案 这个帖子首先发错位置了,这里是技术区,你问的属于咨询类问题 java基础可以学习核心基础卷系列 然后有java编程思想 java深入虚拟机等 解决方案二: 数据库,网络,等等,够你学 解决方案三: 首先Java se基础,在学基础的时候会学到一些数据库,网络的基础知识,然后可以向这两个方面去深入发展 解决方案四: 如果基础不好,可以学一下<Java编程

lift and throw-蓝桥杯-算法训练 Lift and Throw 求教各位大牛,谢谢各位

问题描述 蓝桥杯-算法训练 Lift and Throw 求教各位大牛,谢谢各位 问题描述 给定一条标有整点(1, 2, 3, ...)的射线. 定义两个点之间的距离为其下标之差的绝对值. Laharl, Etna, Flonne一开始在这条射线上不同的三个点, 他们希望其中某个人能够到达下标最大的点. 每个角色只能进行下面的3种操作, 且每种操作每人不能进行超过一次. 1.移动一定的距离 2.把另一个角色高举过头 3.将举在头上的角色扔出一段距离 每个角色有一个movement range参数

java菜鸟真心求教大神,谢谢!

问题描述 java菜鸟真心求教大神,谢谢! 请大神看看下面的代码,我检查了好几次都没发现错误,为何在编译的时候会出现java找不到符号的情况....代码可能有点长...麻烦各位了,谢谢! //测试FileWriter类 public class TestFileWriter { public static void showFile(java.io.File file) { char buff[] = new char[22]; int ret = 0; System.out.println("

centOS服务器配置https环境,容器是tomcat。求教配置过程。谢谢!

问题描述 centOS服务器配置https环境,容器是tomcat.求教配置过程.谢谢! 公司的centOS服务器需要配置https加密,容器是tomcat.证书是公司购买的,如何配置,求教.谢谢! 解决方案 这个比较简单,修改tomcat下的conf/server.xml,指定证书路径为证书存放目录即可如: maxThreads=""150"" scheme=""https"" secure=""true

spring-Spring MVC使用hessian客户端与服务器之间通讯步骤,求教详细过程!谢谢

问题描述 Spring MVC使用hessian客户端与服务器之间通讯步骤,求教详细过程!谢谢 Spring MVC使用hessian客户端与服务器之间通讯步骤,求教详细过程!谢谢 解决方案 http://www.blogjava.net/iduido/archive/2012/04/11/373831.html

c#转java 代码-有会 C# 转 Java 代码么,求教如下代码。谢谢

问题描述 有会 C# 转 Java 代码么,求教如下代码.谢谢 public static string Sign(string prestr, string key, string _input_charset) { StringBuilder sb = new StringBuilder(32); prestr = prestr + key; MD5 md5 = new MD5CryptoServiceProvider(); byte[] t = md5.ComputeHash(Encodi

求教:JAVA链表排序问题

问题描述 大家好,今天在做一个链表的排序实现,用的语言是JAVA,有几点疑问,跪求高手解答:1.请问链表的排序用哪种排序算法比较好?合并,快排,插入?2.可否将结点的数据部分(int,char...)放入一个数组,将数组排序,之后再将数据写回链表?3.再弱弱的问一下,当在面试时遇到此类问题,可否直接调用JAVA自带的链表排序函数,那样的话就easy多了,望有面试经验的兄弟们解答下.不胜感激! 解决方案 解决方案二:1.我觉得插入排序比较合适,因为合并和快排都需要序列的顺序信息,对于链表这个需要遍

高分求教,VS2012添加服务引用报错,此上下文中不支持“http://www.w3.org/2001/XMLSchema:complexType”元素

问题描述 VS2012添加服务引用报错:理解了文档内容,但无法进行处理.-WSDL文档包含无法解析的链接.-此上下文中不支持"http://www.w3.org/2001/XMLSchema:complexType"元素.如果该服务已在当前解决方案中定义,请尝试生成该解决方案,然后再次添加服务引用.用高级里面的添加WEB引用也试过了,还是不行,报同样错误.WSDL和XSD文件见附件. 解决方案 本帖最后由 ohuihui 于 2016-02-17 12:54:47 编辑

高分求教 spring配置文件介绍

问题描述 本人刚学spring对spring的配置文件不是很了解,有哪些配置文件,配置文件的作用是什么,希望大家给介绍一下 解决方案 解决方案二:Context.xml解决方案三:www.google.com