大家好我叫张同学
码龄7年
关注
提问 私信
  • 博客:273,217
    社区:1,117
    动态:136
    274,470
    总访问量
  • 84
    原创
  • 476,801
    排名
  • 10,967
    粉丝

个人简介:为了方便小伙伴们的学习和借鉴,我已取消了所有博客的水印!快来一起学习吧~

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:湖南省
  • 加入CSDN时间: 2017-10-18
博客简介:

大家好我叫张同学

博客描述:
最好的学习方法就是将所学的知识清晰的分享出来~
查看详细资料
个人成就
  • C/C++领域新星创作者
  • 获得2,321次点赞
  • 内容获得1,045次评论
  • 获得4,925次收藏
  • 代码片获得525次分享
创作历程
  • 25篇
    2022年
  • 51篇
    2021年
  • 5篇
    2018年
  • 3篇
    2017年
成就勋章
TA的专栏
  • Linux系统编程
    5篇
  • C语言编程学习
    40篇
  • 聊点有趣的~
  • 做题笔记
    20篇
  • 深入浅出学习C++
    7篇
  • 编程小游戏
    2篇
  • 典型编程练习分享
    13篇
  • 计算机硬核知识
  • 数据结构+算法
    29篇
  • 人工智能探索之旅
  • 地理信息系统学习之路
    9篇
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

【Linux编程】二、Linux常见工具和项目开发(思维导图总结)

什么是软件包?1)在Linux下安装软件,一个通常的办法是下载程序的源代码,并进行编译,得到可执行程序。2)但是这样太麻烦了,于是有些人就把一些常用的软件提前编译好做成软件包(可以理解成Windows上的`.exe`安装程序)放在一个服务器上,通过包管理器我们就可以很方便的获取到这个编译好的软件包,从而直接进行软件的安装。3)软件包和软件包管理器之间的关系,就好比"App"和"应用商店"这样的关系。
原创
发布博客 2022.05.07 ·
3768 阅读 ·
78 点赞 ·
61 评论 ·
68 收藏

【Leetcode刷题笔记之数组篇】26. 删除有序数组中的重复项

给你一个 升序排列 的数组 nums,请你 原地删除重复出现的元素,使每个元素 只出现一次,返回删除后数组的新长度。元素的相对顺序应该保持 一致 。 由于在某些语言中不能改变数组的长度,所以必须将结果放在数组nums的第一部分。更规范地说,如果在删除重复项之后有`k 个元素,那么nums的前 k 个元素应该保存最终结果。 将最终结果插入nums的前 k 个位置后返回 k。 不要使用额外的空间,你必须在 `原地`修改输入数组 并在使用
原创
发布博客 2022.04.15 ·
2183 阅读 ·
52 点赞 ·
43 评论 ·
14 收藏

都是兄弟们的支持,让我上了一次热榜总榜榜一,我会继续努力的,一起加油~

发布动态 2022.04.12

耗时两个星期写的文章,看到这个收藏量还是很开心的,https://blog.csdn.net/QIYICat/article/details/124079825?spm=1001.2014.3001.5502,总榜第四,运维榜第一,有点意外~

发布动态 2022.04.11

【Linux编程】一、Linux常见指令和权限理解(思维导图总结)

初步接触Linux -- 黑框命令行的操作 --稍微不适 --坚持一段时间 --就会用的很爽(各种快捷键)为了便于学习和记忆,对命令进行分类(在总结的部分)命令的实用格式:命令名称 [操作选项] [操作对象](注意命令名称与操作选项之间以空格“ ”分割,操作选项和操作对象也是空格分割,用[]括起来是指该选项可能没有,或者不需要表示,例如:ls -al 用来查看当前路径下的文件详细信息 ,并不需要操作对象, pwd 查看当前所处路径,操作选项和操作对象均没有)
原创
发布博客 2022.04.10 ·
26474 阅读 ·
240 点赞 ·
116 评论 ·
1490 收藏

【C++基础】三、类和对象(中篇)

如果一个类中什么成员都没有,简称为空类。空类中什么都没有吗?并不是的,任何一个类在我们不写的情况下,都会自动生成下面6个默认成员函数。构造函数:在对象构造时调用的函数,这个函数完成初始化工作。构造函数是一个特殊的成员函数,名字与类名相同,创建类类型对象时由编译器自动调用,保证每个数据成员都有一个合适的初始值,并且在对象的生命周期内只调用一次
原创
发布博客 2022.03.30 ·
2770 阅读 ·
33 点赞 ·
25 评论 ·
25 收藏

【C++基础】二、类和对象(上篇)(10000字掌握C++类核心内容)

C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题C++是基于面向对象的,关注的是对象,将一件事情拆分成不同的对象,靠对象之间的交互完成。以我们的生活中的点外卖为例:面向过程关注的是:如何一步步实现从选餐、订餐、送餐、取餐的各个功能模块面向对象关注的是:点餐用户及用户的操作(比如下单、评价等)、餐店店铺及相应操作(添加新菜品,删除菜品,设置价格等)、送餐人员(所在位置、路径规划、接单等)可以很清楚的感受到,一个关注于过程及其实现,一个关注于一个个对象及其操作。
原创
发布博客 2022.03.22 ·
3051 阅读 ·
27 点赞 ·
24 评论 ·
15 收藏

【C++基础】一、C++基础入门(20000字掌握C++基础知识)

在日常生活中,我们可能会经常碰到一个词表示多重含义,一句话可能也能表示多种含义,虽然写法都是一样的。这个时候,如果我们想要理解这些词和句子表示的真正含义,就需要结合上下文(也就是语境信息)来判断其真正的含义。这些词和句子就被重载了。有趣的小故事:自然语言中,一个词可以有多重含义,人们可以通过上下文来判断该词真实的含义,即该词被重载了。比如:以前有一个笑话,国有两个体育项目大家根本不用看,也不用担心。一个是乒乓球,一个是男足。前者是“谁也赢不了! ”(谁也/赢不了),后者是"谁也赢不了!”
原创
发布博客 2022.03.16 ·
4221 阅读 ·
33 点赞 ·
18 评论 ·
74 收藏

【Linux编程】三分钟让你学会Linux下用户密码更改

Linux环境下密码更改包括两种:第一种:root用户(管理员)密码更改第二种:非root用户(普通用户)密码更改可能需要进行密码更改的场景:①购买云服务后,原始的root密码过于复杂,不方便记忆和使用,需要进行root密码更改。②创建一个新的用户后,发现最初设置的密码不好管理,或者之前把这个账号分享给其他人,但是又想要收回账号 。③没啥事情,就是玩儿~一、root用户密码更改总思路:要进行root密码更改,必须在root用户下进行。步骤一:前期准备,登录root用户我们可以直
原创
发布博客 2022.02.25 ·
10496 阅读 ·
24 点赞 ·
13 评论 ·
40 收藏

【Linux编程】手把手教你搭建Linux编程环境

Linux编程环境搭建有两套方案。关于这两套方案我都会做详细的讲解,以便帮助大家减少Linux编程学习的障碍。方案一:云服务器 + Xshell这种方案就是将我们的Linux操作机部署在云服务器上面,然后通过Xshell在自己的电脑上操纵Linux机器。优点:Linux环境部署简单、后期维护成本低、可以随便瞎折腾、不用担心整崩了(推荐) 缺点....
原创
发布博客 2022.02.22 ·
7451 阅读 ·
39 点赞 ·
18 评论 ·
117 收藏

【Linux编程】6个问题带你弄懂Linux

Linux是一款`操作系统`,正如我们日常使用的windows,windows也是操作系统。那么操作系统又是什么呢?操作系统是用来管理计算机软硬件资源,向用户和应用程序提供方便的使用接口和系统调用的`系统软件`。其目的主要是①提高计算机资源的利用率②方便用户使用(典型的例子:windows的图形化用户界面)③管理应用程序软件,保证各个任务可以顺序推进和完成。
原创
发布博客 2022.02.19 ·
1886 阅读 ·
30 点赞 ·
24 评论 ·
17 收藏

【数据结构学习笔记】二、线性表之链表篇(3)(双向链表)

双向带头循环链表,也被叫做双链表。这种链表虽然结构比较复杂,(又是双向,又是带头,又是循环,看起来结构好像很复杂的样子)但是实际操作却非常简单。因此在我们的实际工作或项目中常使用的链表是这种。
原创
发布博客 2022.02.10 ·
1499 阅读 ·
12 点赞 ·
12 评论 ·
3 收藏

【Leetcode刷题笔记之链表篇】剑指 Offer 18. 删除链表的节点

给定单向链表的`头指针`和一个要删除的`节点的值`,定义一个`函数`删除该节点。 返回删除后的链表的`头节点`。
原创
发布博客 2022.01.28 ·
2162 阅读 ·
12 点赞 ·
10 评论 ·
2 收藏

计算机编程入门~(英文原版)

发布资源 2022.01.21 ·
pdf

【Leetcode刷题笔记之链表篇】142. 环形链表 II

给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 如果链表中有某个节点,可以通过连续跟踪 `next `指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数` pos` 来表示链表尾连接到链表中的位置(索引从` 0` 开始)。如果 pos 是` -1`,则在该链表中没有环。 注意:`pos `不作为参数进行传递,仅仅是为了标识链表的实际情况。`不允许修改` 链表。
原创
发布博客 2022.01.20 ·
1179 阅读 ·
4 点赞 ·
1 评论 ·
1 收藏

【Leetcode刷题笔记之链表篇】141. 环形链表

给你一个链表的头节点 `head` ,判断链表中`是否有环`。 如果链表中有某个节点,可以通过`连续跟踪` `next `指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数` pos `来表示链表尾连接到链表中的位置(索引从` 0` 开始)。如果` pos` 是` -1`,则在该链表中没有环。注意:`pos` 不作为参数进行传递,仅仅是为了标识链表的实际情况。 如果链表中存在环,则返回 `true` 。 否则,返回 `false` 。
原创
发布博客 2022.01.18 ·
945 阅读 ·
11 点赞 ·
8 评论 ·
2 收藏

【Leetcode刷题笔记之链表篇】160. 相交链表

给你两个单链表的头节点 `headA` 和 `headB` ,请你找出并返回两个单链表`相交`的`起始节点`。如果两个链表`不存在`相交节点,返回 `null `。 图示两个链表在节点 c1 开始相交:理解相交:不是指A链表中有和B链表中val值相同的结点,而是指这个两个链表中存在相同的结点,如果我们通过指针去遍历A、B两个链表,能够在A、B中找到相同地址的结点,那A、B相交,否则就是不相交。
原创
发布博客 2022.01.16 ·
951 阅读 ·
14 点赞 ·
12 评论 ·
3 收藏

【Leetcode刷题笔记之链表篇】234. 回文链表

给你一个单链表的头节点 `head` ,请你判断该链表是否为`回文链表`。 如果`是`,返回 `true` ;否则,返回` false` 。具有对称性的链表就具有回文结构如果是单数个结点,中间的结点无需考虑,如果其他结点对称肯定是回文结构例如:1 2 3 1 2 也是回文结构这里借助求链表倒数第k个结点的思路。只要链表的.....
原创
发布博客 2022.01.15 ·
1321 阅读 ·
17 点赞 ·
10 评论 ·
3 收藏

【Leetcode刷题笔记之链表篇】21. 合并两个有序链表

将两个升序链表合并为一个新的 `升序` 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 我们可以将list2选为合并后待返回的链表,然后将list1中的结点合并到list2中.注意:在实际写代码的时候,我们会发现仅有一个`next`用来保存`cur1`的下一个结点是不够的。`cur2`的下一个结点的信息也需要保存(`假设`下一个结点`不为空`,若为空直接`cur1`结点插入`cur2`后即可),因为在比较的时候......
原创
发布博客 2022.01.14 ·
1058 阅读 ·
20 点赞 ·
15 评论 ·
4 收藏

【Leetcode刷题笔记之链表篇】面试题 02.04. 分割链表

总体而言,要想实现分割链表的目的有两种大的思路。一种是`不创建新的链表`,直接在`原链表`上面进行相应的操作。另一种是`创建一个新的链表`,将原来的链表`挪到`新链表中,同时达到想要的效果。
原创
发布博客 2022.01.13 ·
869 阅读 ·
20 点赞 ·
12 评论 ·
5 收藏
加载更多