当前位置: 首页 > news >正文

微信公众号小程序开发多少钱江苏短视频seo搜索

微信公众号小程序开发多少钱,江苏短视频seo搜索,郑州好的企业网站建设,湖南省施工图审查建设单位网站一、理论 1 单链表结构 2 增、删、查 、改思路 (增)直接添加放到最后即可。按顺序添加:找到要修改的节点的前一个节点,插入新节点()。(改)要修改的节点修改内容即可。(…

一、理论

1 单链表结构

在这里插入图片描述

2 增、删、查 、改思路

  • (增)直接添加放到最后即可。按顺序添加:找到要修改的节点的前一个节点,插入新节点()。
  • (改)要修改的节点修改内容即可。
  • (删)找到待删除节点的前一个节点,把要删除节点的后一个节点信息存放到该节点的next即可
  • (查==较容易)遍历依次打印即可。按编号查找,找到对应编号打印即可

二、代码实现

1、JAVA代码实现

package basicdata;public class SingleLinkedListTest {public static void main(String[] args) {Node node1 = new Node(123, "Tom", "无极剑道");//SingleLinkedList singleLinkedList = new SingleLinkedList();singleLinkedList.addNode(node1);singleLinkedList.list();System.out.println("*******************");singleLinkedList.addByOrder(new Node(234, "Jack", "断头斩杀"));singleLinkedList.addByOrder(new Node(121, "Jack", "断头斩杀"));singleLinkedList.addByOrder(new Node(121, "Jack", "断头斩杀"));singleLinkedList.list();//System.out.println("******修改后*******");//singleLinkedList.alter(new Node(121, "Bob", "无形之刃"));//singleLinkedList.list();// System.out.println("**************");//singleLinkedList.delNode(234);System.out.println("***反转后***");singleLinkedList.reverSetList();singleLinkedList.list();}
}
//
class SingleLinkedList{// 先初始化一个头结点,头节点不存放数据private Node head = new Node(0,"表头","领导单链表");// 返回表头public Node getHead(){return head;}public SingleLinkedList() {}// 添加节点到单链表,按添加顺序排列public void addNode(Node node){// 思路:把头结点的地址给temp//      直到next = null时,让next存放添加的节点Node temp = head;while (true){if (temp.next == null) {break;}else {temp = temp.next;}}// 退出while 循环时 temp.next = nulltemp.next  = node;}// 遍历单链表public void list(){Node temp = head;if (head == null) {System.out.println("链表为空");return;}while (true){if (temp == null) {break;}else {// 输出节点信息System.out.println(temp);// 指针后移temp = temp.next;}}}//  根据编号顺序插入节点 ,链表内容按编号从小到大排列public void addByOrder(Node node){// 需要先找到要添加位置的前一个节点// 链表为空不需要单独考虑Node temp = head;// 为找到插入位置 需要一个 flagboolean flag = false;while (true){// 此情况可以添加,添加到表头后if (temp.next == null) { // 到链表末端break;}// 此情况不可以添加,要添加的编号已经存在if (temp.next.number == node.number) {flag = true;break;}//此情况为找到要添加位置的前一个节点,可以添加if (temp.next.number > node.number) {break;}else {temp = temp.next;}}if (flag ) {System.out.printf("你要插入的节编号%d已经存在",node.number);System.out.println();}else {node.next = temp.next ;temp.next=node;}}// 修改节点信息(根据编号),编号不变,修改内容public void alter(Node node){if (head.next == null) {System.out.println("链表为空");return;}// 和按编号插入(Node temp = head;)稍微有点区别// Node temp  = head.next;Node temp  = head.next;boolean flag = false;while (true){if (temp == null) {break;}// 找到要修改的节点,可以修改if (temp.number == node.number) {flag = true;break;}else {temp = temp.next;}}if (flag) {// 修改temp.name = node.name;temp.skill= node.skill;}else {System.out.println("没有找到要修改的节点");}}// 根据编号删除节点public void delNode(int number){//需要找到待删除的前一个节点Node temp = head;boolean flag = false;while (true){if (temp.next == null) {break;}//找到待删除的前一个节点if (temp.next.number == number) {flag = true;break;}else {temp  =  temp.next;}}if (flag ) {//temp.next = temp.next.next;}else {System.out.println("要删除的元素不存在");}}// 反转单链表public void reverSetList(){if (this.head.next== null||this.head.next.next==null) {return;}Node tempCur = this.head.next; // 辅助变量Node tempNext = null;      // 指向tempCur,不然会丢失Node reverSetHead = new Node(0, "", ""); // 新链表while (tempCur != null){tempNext = tempCur.next; //存储当前节点的下一节点tempCur.next = reverSetHead.next;// 头插法 把当前节点接到到reverSetHeadreverSetHead.next = tempNext;tempCur=tempNext;// 后移}this.head.next = reverSetHead.next;}}
// 定义Node
class Node{public int number;public String name;public String skill;public Node next;    //存放下一个节点地址
//构造器public Node(int number, String name, String skill) {this.number = number;this.name = name;this.skill = skill;//this.next = next;// 理解:不给next赋值//没申请一个节点时 next = null}//重写 toString@Overridepublic String toString() {return "Node{" +"number=" + number +", name='" + name + '\'' +", skill='" + skill + '\'' +'}';}
}

运行结果

Node{number=0, name='表头', skill='领导单链表'}
Node{number=123, name='Tom', skill='无极剑道'}
*******************
你要插入的节编号121已经存在
Node{number=0, name='表头', skill='领导单链表'}
Node{number=121, name='Jack', skill='断头斩杀'}
Node{number=123, name='Tom', skill='无极剑道'}
Node{number=234, name='Jack', skill='断头斩杀'}
******修改后*******
Node{number=0, name='表头', skill='领导单链表'}
Node{number=121, name='Bob', skill='无形之刃'}
Node{number=123, name='Tom', skill='无极剑道'}
Node{number=234, name='Jack', skill='断头斩杀'}
删除后**************
Node{number=0, name='表头', skill='领导单链表'}
Node{number=121, name='Bob', skill='无形之刃'}
Node{number=123, name='Tom', skill='无极剑道'}

2、C语言代码实现

http://www.hkea.cn/news/729585/

相关文章:

  • 互联网有哪些岗位宁波免费seo在线优化
  • 惠州做棋牌网站建设哪家技术好哪里的网络推广培训好
  • 如何做线上赌博的网站推广策略有哪些方法
  • 男的女的做那个视频网站百度收录需要多久
  • 大通县wap网站建设公司网站免费制作
  • 哪个网站教做公众号甘肃百度推广电话
  • 网站怎么让百度收录广告网络推广
  • 小型网站设计及建设论文定制网站制作公司
  • 视频网站建设费用排名优化网站seo排名
  • 怎么自己做网站服务器linux百度账号查询
  • 梧州网站推广方案百度热搜 百度指数
  • 网站不兼容ie6自助建站模板
  • 甘肃网站建设公司百中搜优化软件
  • 国内外贸网站建设公司seo教程 百度网盘
  • 一物一码二维码生成系统最好用的系统优化软件
  • 如何在大网站做外链镇江网站建站
  • 杭州网站建设公司导航短视频营销案例
  • 昆明做网站建设有哪些长尾关键词排名工具
  • 一女被多男做的视频网站网站seo系统
  • 网站建设 青海网站建设找哪家好
  • win7 网站配置优化方案官网电子版
  • 广州seo优化公司排名浙江seo博客
  • 全网推广的方式有哪些抖音seo推荐算法
  • 网站开发开源架构抖音营销软件
  • 自己做的网站能放到网上么青岛seo经理
  • 营业推广策划方案邵阳网站seo
  • 手机网站横向切换kol合作推广
  • 专门做超市海报的网站宁波seo咨询
  • 仿网站上的焦点图在线看seo网站
  • 做网站的业务员艾滋病阻断药有哪些