![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 79
宇宙修理员
开垦和维修,缺一不可。|| CS研究生在读。
展开
-
【数据结构C++】线性表-链式存储:链表类型和单链表(定义+代码实现)
本章我们介绍线性表的链式存储——链表。链表类型、单链表理论知识和类型定义,具体函数的代码模板原创 2024-03-15 10:29:37 · 1007 阅读 · 0 评论 -
【数据结构C++】线性表/顺序表-实战:通信录
这篇blog面向刚入门学习数据结构的小伙伴们,参考第二章的函数模板可以实现这个通信录的项目。按照下面步骤,不需任何修改就可以顺利编译。原创 2024-03-13 15:46:15 · 1848 阅读 · 0 评论 -
【数据结构C++】线性表/顺序表-数据类型、增删改查操作
我们在第一章中认识了数据结构的内容,以及数组和Vector的语法和区别,这张我们着重学习数据结构中线性表的顺序存储结构的相关操作和应用。包括顺序表的增删改查等代码的实现。原创 2024-03-13 11:03:03 · 1154 阅读 · 0 评论 -
算法作业1:倒水问题——三壶谜题
有一个充满水的8品脱的水壶和两个空水壶(容积分别是5品脱和3品脱)。通过将水壶完全倒满水和将水壶的水完全倒空这两种方式,在其中的一个水壶中得到4品脱的水。原创 2022-10-27 14:52:03 · 3276 阅读 · 0 评论 -
『Leetcode』双指针
本题的关键是右指针的初始化,设右指针为 x,左指针固定为 0,为了使 0^2 + x*x 的值尽可能接近 target,我们可以将 x 取为 sqrt(target)。我思路:用双指针,为了使空间复杂度为O(1),讲num1和num2直接合并为num1,但是存在问题:num1部分元素被覆盖。改进:观察可知,nums1的后半部分是空的,可以直接覆盖而不会影响结果。用到贪心算法,代码写出来了,可以AC,但对贪心算法没有概念,刷到贪心的时候需要回看此题。法2-快慢指针:该题为快慢指针的经典母题。原创 2022-10-29 00:38:16 · 343 阅读 · 0 评论 -
C/C++经典例题(一)素数
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录一、求素数问题?1. 问题:**输出100->200之间的素数的个数,以及所有的素数。分解:一、求素数问题?1. 问题:**输出100->200之间的素数的个数,以及所有的素数。解答:#include<stdio.h>#include<math.h>int isPrime(int n){ //判断素数 for(int i=2;i<=sqrt(n);i++){原创 2022-01-08 12:32:12 · 849 阅读 · 0 评论 -
『牛客网』剑指offer-JZ6 从尾到头打印链表
久违的刷题计划开始了,本次计划为每日一题,路线如下:剑指offer(64题),HOT 100,精选算法 200。由于这个题目需要我们从后面向前面开始打印这个数组。所以我们可以对遍历的结点进行一个递归,我们先递归到这个链表的最后面,然后不断向前收集权值。原创 2022-10-24 21:40:35 · 324 阅读 · 0 评论 -
『Leetcode』XOR异或问题:136. 只出现一次的数字
Xor算法第一题原创 2022-12-01 20:32:24 · 128 阅读 · 0 评论 -
『算法竞赛入门经典(第2版)』5-1 大理石在哪儿?
的含义:第一个数输入的返回值为两个%d, 意思为只有输出两个整数后才返回2。所以 scanf() == 2;&& 的意思为: 不但要输入2个整数int类型的数,还有n且m不等于0。意义:无限循环执行while循环。:lower_bound( )和upper_bound( )都是利用二分查找的方法在一个排好序的数组中进行查找的。:从数组的begin位置到end-1位置二分查找第一个大于或等于num的数字,找到返回该数字的地址,不存在则返回end。原创 2022-10-27 19:45:21 · 148 阅读 · 0 评论 -
『Leetcode』十大排序的应用
十大排序算法的力扣例题原创 2022-11-10 17:12:51 · 320 阅读 · 0 评论 -
『Leetcode』排序-剑指offer
排序算法的应用原创 2022-10-31 20:44:48 · 154 阅读 · 0 评论 -
【数据结构C++】线性表/顺序表-数组与vector
在数据结构专栏(本专栏)中,我们将总结数据结构与算法的理论知识和结合LEETCODE相关题目的应用,旨在将零散的知识点按章节形成系统的知识库,并将知识应用于代码编写中。因为数组的在内存空间的地址是连续的,所以我们在删除或者增添元素的时候,就难免要移动其他元素的地址。数组的元素是不能删的,只能覆盖。支持随机访问:用户可以向使用数组的方式访问vector中的每一个元素,但vector不适宜做任意位置的插入和删除操作,因为要进行大量元素的搬移,比如插入。C++数组C++ vector用法详解。原创 2024-03-12 19:33:22 · 1010 阅读 · 0 评论