算法
文章平均质量分 85
Iced_Sheep
这个作者很懒,什么都没留下…
展开
-
算法通关村--------不简单数组的增删改查
数组存储时,是一片连续的存储空间。每一个元素占用相同的内存大小。数组的空间不一定是满的。假设你创建一个长度为100的数组,但是以实际存储的元素只有10个,那么此时,数组的长度length→100,存储的元素个数 size → 10。原创 2024-01-10 15:28:51 · 948 阅读 · 1 评论 -
算法通关村第二关 ---- 链表的反转
这里注意的是:我们将结点摘下来接到虚拟结点的后面的时候,我们是声明了多一个变量next 来标记下一个结点。//当你插入的时候,cur就成了反转后链表的头了,用prev来标记。我们先创建一个虚拟的结点,遍历链表从头开始,将结点接到虚拟结点的后面。//这也是链表的插入,只不过是首部插入罢了。//先让指针指向要插入结点的下一个结点。//链表的插入这两个步骤,是不能调换的。//先让指针指向要插入结点的下一个结点。//让一个结点成为头结点继续的遍历。如何接到虚拟结点的后面,其实就是一个链表插入的过程。原创 2023-12-15 19:09:17 · 404 阅读 · 0 评论 -
算法通关村第二关 -------- 链表两两交换 链表指定区间反转
我们既然是两两交换,我们要有一个指针cur 指向要反转结点的前一个结点,也就是说每次循环反转两个结点的时候cur都要移动到要 反转结点 的前一个结点。注意了:这里是最难想的 这个过程中要断开三个指针 重新再将指针连起来是要有顺序的否则,你连着连着就发现某一个结点的next就不见了。既然他有一个区间的范围,我们先遍历找到反转区间的前一个结点。//这一步就是让cur 指针移动到要交换的两个结点的前一个结点。//next 标记的是要反转的结点。//我们先遍历找到要反转区间的前一个结点。//剩下三个是连接的顺序。原创 2023-12-15 19:01:51 · 874 阅读 · 0 评论 -
【无标题】算法通关村第一关 ————链表
链表就像一个铁链一样,有许多个结点,每一个结点里面有两部分组成,存储元素和指向后继元素的next指针,或者说,下一个元素的地址值。表中的最后一个元素next指针为null。你是否真的的理解链表的含义呢?第一个是符合要求,单链表只能有一个后继结点,但是没有说不可以有多个前驱结点。原创 2023-12-07 09:43:29 · 981 阅读 · 1 评论