自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (2)
  • 收藏
  • 关注

原创 win10安装ElasticSearch7.12.0和Kibana7.12.0教程

查询官网:https://www.elastic.co/cn/downloads/elasticsearch选择自己需要的版本进行下载,有时候会下载连接失败,我在此为小伙伴们分享网盘连接:链接:https://pan.baidu.com/s/1QVnxFU4dUBOv3MiV9mqiwQ提取码:eariElasticsearch是一个实时的分布式存储,搜索和分析引擎。它可以用于许多目的,但是它擅长的一种环境是索引半结构化数据流,例如日志或解码的网络数据包。Kibana是一个旨在与Elastics

2021-04-19 09:47:47 816

原创 LeetCode61(力扣61)旋转链表 C++详细

61.旋转链表题目描述给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。示例 1:输入: 1->2->3->4->5->NULL, k = 2输出: 4->5->1->2->3->NULL解释:向右旋转 1 步: 5->1->2->3->4->NULL向右旋转 2 步: 4->5->1->2->3->NULL示例 2:输入: 0-&g

2021-01-18 18:58:35 409

原创 删除链表的倒数第k个节点(C++)详细

删除链表的倒数第k个节点思想及算法因为要删除倒数第k个节点,因此要知道是的正序的第几个,所以可以先遍历一遍链表获得链表的长度。代码#include<iostream>using namespace std;struct list { int val; list* next; list(int x) :val(x), next(nullptr) {}};list* insert(list* head, int x) { list* p = head; while (

2021-01-17 16:42:23 500

原创 逆置/反转单链表(C++)详细

逆置/反转单链表遗留的问题:我想新创建一个链表来实现单链表的反转,目前还没有实现出来思想及算法代码#include<iostream>using namespace std;struct list { int val; list* next; list(int x):val(x),next(nullptr){}};list* insert(list* head,int x) { list* p = head; while (p->next) {

2021-01-17 16:11:48 519

原创 在无头单链表的一个节点前插入一个节点(不能遍历链表) (C++)详细

算法思想代码#include<iostream>using namespace std;struct list{ int val; list* next; list(int x):val(x),next(nullptr){}};list* insert(list* head,int x) { list* p = head; while (p->next) { p = p->next; } list* t = new list(x); p-

2021-01-16 21:28:40 353

原创 删除一个无头单链表的非尾节点(不能遍历链表) (C++)详细

删除一个无头单链表的非尾节点(不能遍历链表)疑问:为什么要说明是无头单链表?——因为如果是带有头节点的单链表,假设要删除的是第一个节点,头节点是没有数据域的只有指针域,因此要想使用以下的方法就不能实现。算法思想我的代码#include<iostream>using namespace std;struct list{ int val; list* next; list(int x) :val(x), next(nullptr){}};list* insert

2021-01-16 20:46:02 177

原创 查找链表的中间节点,只能遍历一次数组(C++)详细

查找链表的中间节点,只能遍历一次数组方法及思想因为要求只能遍历一次链表,那么我们就可以边遍历边查找中间的节点。每遍历一步,就找一次中间节点,然后移动只想中间节点的指针。此处借助链表的长度来实现这个解法,我假设在链表长度为偶数时,中间节点为length/2取下取整(参考二分法)代码#include<iostream>using namespace std;struct list { int val; list* next; list(int x) :val(x), next(

2021-01-15 18:15:21 248

原创 从尾到头打印单链表(C++)详细

1.从尾到头打印单链表遗留的问题:在递归反向打印时,尾巴的->怎么处理掉?方法及思想:正序打印方法一:正序遍历,若当前节点的下一个节点不为nullptr(p->next!=nullptr),那么p继续往后移。直到移到最后一个节点为止方法二:使用递归,直到递归语句return中head传为head->next(此时在最后一次递归时,虽然下一个为空但是我们不知道,我们还会继续对其head->next),因此结束条件是:head==nullptr。注意cout输出语句的顺序

2021-01-15 18:07:55 1721

原创 CentOS8.3安装时报错: DFN error:Error in POSTTRANS scriptlet in rpm package kernel-core

CentOS8.3安装时报错:DFN error:Error in POSTTRANS scriptlet in rpm package kernel-core解决办法:重新安装,在手动分区时,将/boot设置为300MB

2021-01-13 21:05:02 4932 4

原创 LeetCode136(力扣136):只出现一次的数字 (C++)

136.只出现一次的数字给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]输出: 4我的题解(错误错误错误)class Solution {public: int singleNumber(vector<int>& nums) { so

2020-12-16 01:42:33 293

原创 LeetCode541(力扣541):反转字符串Ⅱ(C++)

541.反转字符串Ⅱ给定一个字符串 s 和一个整数 k,你需要对从字符串开头算起的每隔 2k 个字符的前 k 个字符进行反转。如果剩余字符少于 k 个,则将剩余字符全部反转。如果剩余字符小于 2k 但大于或等于 k 个,则反转前 k 个字符,其余字符保持原样。示例:输入: s = "abcdefg", k = 2输出: "bacdfeg"提示:该字符串只包含小写英文字母。给定字符串的长度和 k 在 [1, 10000] 范围内。我的题解class Solution {publi

2020-12-15 13:52:54 235

原创 LeetCode334(力扣334):反转字符串(C++)

344 反转字符串编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。示例 1:输入:["h","e","l","l","o"]输出:["o","l","l","e","h"]示例 2:输入:["H","a","n","n","a","h"]输出:["h","a","n","n","a","H

2020-12-15 13:23:37 167

原创 cpp初阶--Lesson 04 类和对象(下)

Lesson 04 类和对象(下)【本节目标】1. 再谈构造函数2. C++11 的成员初始化新玩法。3. 友元4. static成员5. 内部类6. 再次理解封装虽然构造函数调用之后,对象中已经有了一个初始值,但是不能将其称作为类对象成员的初始化,构造函数体中的语句只能将其称作为赋初值,而不能称作初始化。因为初始化只能初始化一次,而构造函数体内可以多次赋值。(这句话可以这样理解:就像 int a=1;声明一个a变量且初始化为1,而在程序之后再也不用对a初始化。而构造函数是一个函数,他可以多

2020-12-14 08:36:33 149

原创 cpp初阶——Lesson03 类与对象(中)

Lesson 03类与对象(中)【本节目标】1. 类的6个默认成员函数2. 构造函数3. 析构函数4. 拷贝构造函数5. 赋值操作符重载6. 默认拷贝构造与赋值运算符重载的问题7.const成员函数8.取地址及const取地址操作符重载1. 类的6个默认成员函数如果一个类是空类,那它也有6个默认的成员函数。2.构造函数构造函数是一个特殊的成员函数,名字与类名相同,创建类类型对象时由编译器自动调用,保证每个数据成员都有 一个合适的初始值,并且在对象的生命周期内只调用一次。2.2

2020-12-14 01:48:14 186 1

原创 cpp面试题合集

面试题合集下面两个函数能形成函数重载吗?有问题吗或者什么情况下会出问题?void TestFunc(int a = 10) { cout<<"void TestFunc(int)"<<endl; }void TestFunc(int a) { cout<<"void TestFunc(int)"<<endl; }我的答案:不能形参函数重载。函数重载在同一作用域下,函数同名而参数列表不同。而参数列表中形参列表(参数个数 或 类型 或

2020-12-13 22:12:32 1406

原创 cpp初阶--Lesson 02--类与对象(上)

Lesson 02类与对象(上)【本节目标】1.类与对象的初步认知2.类的引入3.类的定义4.类的作用域5.类的实例化6.类的访问限定符及封装7.类的对象大小的计算8.类成员函数的this指针1.类与对象的初步认知C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题。C++是基于面向对象的,关注的是对象,将一件事情拆分成不同的对象,靠对象之间的交互完成。2.类的引入**C语言中,结构体中只能定义变量,在C++中,结构体内不仅可以定义变量,也可以定义函数

2020-12-13 20:15:34 139

原创 cpp初阶—Lesson01—C++入门

Lesson01–C++入门2.命名空间在C/C++中,变量、函数和后面要学到的类都是大量存在的,这些变量、函数和类的名称将都存在于全局作用域中,可能会导致很多冲突。使用命名空间的目的是对标识符的名称进行本地化,以避免命名冲突或名字污染,namespace关键字的出现就是针对这种问题的。2.1 命名空间定义定义命名空间,需要使用到namespace关键字,后面跟命名空间的名字,然**后接一对{}**即可,{}中即为命名空间的成员。//1. 普通的命名空间namespace N1 // N1为

2020-12-13 18:25:48 323

原创 cpp初级--Lesson00--前言

Lesson00–前言1. 什么是C++20世纪80年代, 计算机界提出了OOP(objectoriented programming:面向对象)思想C++是基于C语言而产生的,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行面向对象的程序设计。2.C++发展史3.C++的重要性3.3.3 面试题【某学长腾讯面试】\1. 讲解一下你的项目。 【项目】\2. 讲一下epoll和select的区别。【网络】\3. epoll的ET和LT。【

2020-12-13 15:41:41 202

原创 LeetCode101(力扣101):对称二叉树 C++

101.对称二叉树给定一个二叉树,检查它是否是镜像对称的。例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \3 4 4 3但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的: 1 / \ 2 2 \ \ 3 3进阶:你可以运用递归和迭代两种方法解决这个问题吗?我提交的代码class Solution {public: bool isDCtre

2020-12-12 15:41:31 263

原创 LeetCode485(力扣485)最大连续1的个数 C++ 使用C++11for

485 最大连续1的个数给定一个二进制数组, 计算其中最大连续1的个数。示例 1:输入: [1,1,0,1,1,1]输出: 3解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3.注意:输入的数组只包含 0 和1。输入数组的长度是正整数,且不超过 10,000。我提交的代码class Solution {public: int findMaxConsecutiveOnes(vector<int>& nums) { int

2020-12-10 19:16:37 238 1

原创 LeetCode100(力扣100) :相同的树 C++ 多种思路

100.相同的树给定两个二叉树,编写一个函数来检验它们是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。示例 1:输入: 1 1 / \ / \ 2 3 2 3 [1,2,3], [1,2,3]输出: true示例 2:输入: 1 1 / \ 2

2020-12-09 23:19:59 315

原创 我的C++边学习边收藏之路

我的C++边学习边收藏之路1. 使用黑马程序员的笔记2. system(“pause”);C++:VS控制台闪退,看不到输出结果,添加system(“pause”);3. 命名规则(每一次git 都需要进行编码规范的检查,业内用的google标准)google 编码规范4. 控制字符控制字符用于向计算机发出一些特殊指令,例如0x07会让计算机发出哔的一声,0x00通常用于指示字符串的结束,0x0D和0x0A用于指示打印机的打印针头退到行首(回车)并移到下一行(换行).ascii控制字符(不

2020-12-09 01:02:20 197 2

原创 LeetCode1137(力扣1137) :泰波那契数列 C++ 多种思路与详细解析

1137. 第 N 个泰波那契数泰波那契序列 Tn 定义如下:T0 = 0, T1 = 1, T2 = 1, 且在 n >= 0 的条件下 Tn+3 = Tn + Tn+1 + Tn+2给你整数 n,请返回第 n 个泰波那契数 Tn 的值。示例 1:输入:n = 4输出:4解释:T_3 = 0 + 1 + 1 = 2T_4 = 1 + 1 + 2 = 4示例 2:输入:n = 25输出:1389537提示:0 <= n <= 37答案保证是一个 32 位

2020-12-08 02:03:18 402

原创 LeetCode509(力扣509) :斐波那契数列 C++ 多种思路与详细解析

509 斐波那契数列斐波那契数,通常用 F(n) 表示,形成的序列称为斐波那契数列。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是:F(0) = 0, F(1) = 1F(N) = F(N - 1) + F(N - 2), 其中 N > 1.给定 N,计算 F(N)。示例 1:输入:2输出:1解释:F(2) = F(1) + F(0) = 1 + 0 = 1.示例 2:输入:3输出:2解释:F(3) = F(2) + F(1) = 1 + 1

2020-12-08 01:41:02 587

原创 剑指offer 03:数组中重复的数字 C++(含测试代码)

剑指offer 03. 数组中重复的数字找出数组中重复的数字。在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。示例 1:输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3 限制:2 <= n <= 100000我的提交代码class Solution {public: int findRepeatNumber(v

2020-12-05 11:44:56 140

原创 LeetCode88(力扣88):合并两个有序数组 C++(含有测试代码)多种思路与解法想详细

合并两个有序数组给你两个有序整数数组 nums1 和 nums2,请你将 nums2 合并到 nums1 中,使 nums1 成为一个有序数组。说明:初始化 nums1 和 nums2 的元素数量分别为 m 和 n 。你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。示例:输入:nums1 = [1,2,3,0,0,0], m = 3nums2 = [2,5,6], n = 3输出:[1,2,2,3,5,6]提示:-10^

2020-12-05 02:50:20 487

原创 IDEA将包层目录完全展示,找不到compact middle packages怎么办?

哎,终究是我太菜了。我最近写bug的时候,想展开包层级的目录,但是各种搜索都是如下:(截一位大佬的图,谢谢啦!)可是我找不到Compact Middle Packages 啊,我的是这样:在设置框里根本就没有Compact Middle Packages,找了很多文章都不一样。解决办法:把上图的 Flatten Packages和Hide Empty Middle Packages前面的小勾取消,就好了!...

2020-12-03 22:58:48 6663 12

原创 LEETCODE35(力扣35)题:搜索插入位置(二分法)

二分查找T35.搜索插入位置给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。示例 1:输入: [1,3,5,6], 5输出: 2示例 2:输入: [1,3,5,6], 2输出: 1示例 3:输入: [1,3,5,6], 7输出: 4示例 4:输入: [1,3,5,6], 0输出: 0我的提交代码class Solution {public: int sear

2020-12-03 22:27:31 408

原创 《C编程专家》——第一章学习笔记

C编程专家——第一章1.1 C语言的史前阶段先有C语言还是先有UNIX?——UNIX比C语言出现的早(UNIX系统时间是从1970年1月1日起按秒计算的)早期C、UNIX和相关的硬件系统关系如下图:软件信条:编译器设计者的金科玉律:效率(几乎)就是一切在编译器中,效率几乎就是一切。还有别的需要关心:有意义的错误信息、良好的文档、产品支持编译器的效率包括:运行效率(代码的运行速度)、编译效率(产生可以执行代码的速度)很多编译优化措施会延长编译时间,但却能缩短运行时间。有的既能缩短编译时间,

2020-11-23 19:19:01 282

原创 LeetCode283(力扣283):移动零 C语言(含测试代码)多种思路与详细解法

T283.移动零这里是引用难度:简单给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:​ 输入: [0,1,0,3,12]​ 输出: [1,3,12,0,0]说明: 1. 必须在原数组上操作,不能拷贝额外的数组。 2. 尽量减少操作次数。我的提交代码void moveZeroes(int* nums, int numsSize){ int temp; for (int i = 0; i < numsSize -

2020-11-19 16:54:05 1062

原创 Kettle Spoon转换之Hello World!

先对Spoon的“转换”进行学习,首先设计一个“HelloWorld!”的转换。1.进入spoon后,转换>输入>自定义常量数据。找到“自定义常量数据”,拖到右侧即可。2.双击UDJE图标,配置元数据选项卡和数据选项卡,如下图所示,配置好以后点击OK。3.转换>脚本>利用Janino计算Java表达式,找到“Janino计算Java表达式”,拖到右侧。4.使用鼠标悬停工具,将鼠标移到“自定义常量数据”悬停不动,会自动弹出辅助工...

2020-09-16 21:14:18 797

原创 C++之 system(“pause“); 与 getchar(); 防止控制台闪退

在使用宇宙开发神器时,我们发现控制台在弹出后以极快的速度闪退,怎么办?方法一:在return 0之前添加 getchar();#include<iostream>using namespace std;int main(){ cout<<"hello word"<<endl; getchar();return 0;}添加了以后,控制台还是刹不住车怎么办?再来一个!#include<iostream>usi..

2020-07-06 23:32:17 1089 1

原创 【数据结构】——顺序表的插入、扩容、删除、性能分析基础详解

1.1线性表的定义 线性表:是由n个数据元素组成的有限序列,记为 (a1,a2,……,ai,……,an) eg:英文字母表(a,b,c……z)是一个长度为26的线性表问题1:线性表是否允许长度n=0? 答:是!(从实际出发,为什么要有数据结构?为什么要有线性表?——让我们存储元素的呀!当我们的元素还没有进入线性表的时候,n=0)问题2:什么叫前驱/后继?每个元素都有前驱/后继吗? 答:前驱——此元素前面的一个元素就是...

2020-06-12 00:18:00 3610 1

软考思维导图.xmind

前段时间准备软考,我自己作题的时候做的思维导图。可能不太全就总结了几套题的,但是还挺长的,是上午试题的xmind,下午试题的我还得找找!有需要的小伙伴可以私信的哦

2020-12-03

8051单片机Proteus仿真丁字路口交通灯

这个课程设计是我花啦好多时间做出来的心血,是丁字路口的具体实现,考虑实际项目的成本问题,一共使用四个单片机(老师要求)。项目可以正常的运行,实在是良心的计算机妹妹,把我的项目,代码,课设的报告,答辩的ppt都打包啦。感谢各位大佬的五星好评啊,如果有问题的地方可以私信我的哦~

2020-07-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除