博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据结构与算法实战_线性结构
阅读量:3917 次
发布时间:2019-05-23

本文共 705 字,大约阅读时间需要 2 分钟。

顺序表

一维数组

查找、插入、删除

C

init printList

在这里插入图片描述
insert
x插入到下标为k的位置
在这里插入图片描述
插入的下标可以是最后一个元素位置(length-1)的后一个(length)
在这里插入图片描述
在这里插入图片描述
delete
在这里插入图片描述
在这里插入图片描述

C++

在这里插入图片描述

在这里插入图片描述
在C++里迭代器是连续的,v.begin+2代表0号元素往后挪两个位置.
这里的insert 第一个参数必须是一个迭代器。
在这里插入图片描述
删除
在这里插入图片描述

JAVA

插入

在这里插入图片描述
在这里插入图片描述
删除
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

链表

C语言

头指针,在第一个位置插入节点会改变头指针的值。

头结点,在第一个位置插入新的结点,改变的只是头结点next域的值,并不会改变指向头结点指针的值。
在这里插入图片描述
typedef给指向结构体的指针起外号。
在这里插入图片描述
init 传的是指针的地址 所以用struct Node** p 承接
getLength 值传递,函数里head=head->next 只是改变的局部变量
在这里插入图片描述
printList 在这里插入图片描述
同样是值传递
在这里插入图片描述
插入
在这里插入图片描述

  • 插入的位置是个小于1的数字, 则直接返回0
  • 插入如果是第一个位置
    链表原来没有结点,新的结点t->next = null;(创建结点的时候就已经初始化了)
    链表原来有其他结点,则必须设置 t->next = *phead 否则链表将只有一个结点。
  • 插入的位置大于1,(count遍历前就设置为1)
    找不到k-1的位置 一直遍历到最后一个结点,p = null ,count 也没有到k-1.直接输出0
    可能找得到k-1的位置,从第一个结点往后遍历,不为空就count++,直到count = k-1(找到k-1的位置),指针指向第k-1个结点后,先栓新绳子,再解开旧绳子。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
删除
删除操作可能会改变链表的头指针(删除第一个结点的时候),所以

队列

转载地址:http://uavrn.baihongyu.com/

你可能感兴趣的文章
ASP.NET Core中的分布式缓存
查看>>
在ASP.NET Core中创建自定义端点可视化图
查看>>
继续分享 5 个实用的 vs 调试技巧
查看>>
五年了,别再把务虚会开 “虚” 了
查看>>
一文看懂"async"和“await”关键词是如何简化了C#中多线程的开发过程
查看>>
每天都在支付,你真的了解信息流和资金流?
查看>>
.Net Core 自定义配置源从配置中心读取配置
查看>>
基于.NetCore3.1系列 —— 日志记录之日志配置揭秘
查看>>
设计模式之享元模式
查看>>
单例模式最佳实践
查看>>
.NET Core + Spring Cloud:服务注册与发现
查看>>
今天你内卷了吗?
查看>>
设计模式之代理模式
查看>>
在 MySQL 中使用码农很忙 IP 地址数据库
查看>>
结构型设计模式总结
查看>>
dotNET:怎样处理程序中的异常(实战篇)?
查看>>
What is 测试金字塔?
查看>>
api接口返回动态的json格式?我太难了,尝试一下 linq to json
查看>>
.Net Core HttpClient处理响应压缩
查看>>
十分钟搭建自己的私有NuGet服务器-BaGet
查看>>