C++
文章平均质量分 69
程序员张小妍
相信相信的力量,努力做好自己!
展开
-
C++二叉树的镜像(数据结构-树)
题目描述:操作给定的二叉树,将其变换为源二叉树的镜像。数据范围:二叉树的节点数 0≤n≤1000 , 二叉树每个节点的值0≤val≤1000要求: 空间复杂度 O(n) 。本题也有原地操作,即空间复杂度 O(1) 的解法,时间复杂度 O(n)比如:源二叉树镜像二叉树示例:输入:{8,6,10,5,7,9,11}返回值:{8,10,6,11,9,7,5}解题思路:本题考察数据结构树的使用,可用递归来解。两种解法:一种是自上而下,从根结点开始,直接交换左右子树结点转载 2022-04-24 08:37:12 · 818 阅读 · 2 评论 -
C++删除链表的节点(数据结构-链表)
题目描述:给定单向链表的头指针和一个要删除的节点的值,定义一个函数删除该节点。返回删除后的链表的头节点。1.此题对比原题有改动2.题目保证链表中节点的值互不相同3.该题只会输出返回的链表和结果做对比,所以若使用 C 或 C++ 语言,你不需要 free 或 delete 被删除的节点数据范围:0<=链表节点值<=100000<=链表长度<=10000示例:输入:{2,5,1,9},5返回值:{2,1,9}说明:给定你链表中值为 5转载 2022-04-24 08:34:06 · 2889 阅读 · 3 评论 -
C++实现各种进制转换
前言我们最常见的进制转换就是十进制转换为二进制了,就是不停的作除法,取余数。例如:十进制的10转换为二进制10÷2=5···05÷2=2···12÷2=1···01÷2=0···1直到商为0,然后把余数倒着写,所以10的二进制表示为1010。十进制->N进制会了十进制转换为二进制,那么十进制转换为任意进制也就迎刃而解了,只要不停的除法和取余就好了。#include <iostream>#include <cstdio>#includ原创 2022-04-04 16:04:02 · 11333 阅读 · 5 评论 -
C++入门基础知识总结(2022整理)
一、C++入门基础知识之什么是C++?1982年,Bjarne Stroustrup博士在C语言的基础上引入并扩充了面向对象的概念,发明了一种新的程序语言。为了表达该语言与C语言的渊源关系,命名为C++。因此:C++是基于C语言而产生的,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行面向对象的程序设计。PDF版、C++资料教程、C++电子书籍获取关注微信公众号:“ C和C加加 ” 回复关键字:“ C++ ”即可领取二、C++入门基础..原创 2022-03-23 15:07:02 · 24419 阅读 · 10 评论 -
C++逆序栈问题
问题描述:给你一个栈,要求只能使用递归,并且不能开辟额外的数据结构,将此栈进行逆序操作思路求解:我们如果想要逆序栈,首先要想办法拿到栈底元素,并且还需要将栈底上面的元素按照原顺序重新压入例如我们有这个栈打开百度APP看高清图片我们需要一个函数,在不影响2,3顺序的情况,拿出1我们可以这样:先拿出一个元素,再判断是否为空为空直接返回当前栈就一个元素,顶部当然是它本身然后我们这样递归函数堆栈底层不断把答案往上返回所以我们递归取得栈底的代码如下我们的主函原创 2022-03-02 10:41:45 · 1083 阅读 · 1 评论 -
C++开发工具,C++的IDE推荐
C++开发工具——C++的IDE是C++程序员用于编程的应用程序或软件。IDE主要包括三部分,即源代码编辑器,构建自动化工具(编译器)和调试器。源代码编辑器是程序员可以编写代码的地方,而程序员使用构建自动化工具来编译代码,而调试器则用于测试或调试程序以解决在代码中的错误。今天推荐一下最适合C++的开发IDE工具...原创 2022-01-10 08:41:59 · 25036 阅读 · 9 评论 -
C/C++头文件以及避免头文件包含造成的重定义方法
C头文件头文件是扩展名为.h的文件,包含了 C 函数声明和宏定义,被多个源文件中引用共享。有两种类型的头文件:程序员编写的头文件和编译器自带的头文件。在程序中要使用头文件,需要使用 C 预处理指令#include来引用它。前面我们已经看过stdio.h头文件,它是编译器自带的头文件。引用头文件相当于复制头文件的内容,但是我们不会直接在源文件中复制头文件的内容,因为这么做很容易出错,特别在程序是由多个源文件组成的时候。A simple practice in C 或 C++ 程序...转载 2021-12-17 15:58:53 · 1810 阅读 · 1 评论 -
C++: sort排序函数
需要包含的头文件<algorithm>c++标准库里的排序函数的使用方法(1)第一个是要排序的数组的起始地址。(2)第二个是结束的地址(最后一位要排序的地址)(3)第三个参数是排序的方法,可以是从大到小也可是从小到大,还可以不写第三个参数,此时默认的排序方法是从小到大排序。Sort函数使用模板:Sort(start,end,排序方法)例如:下面来说排序方法,排序方法是自己编写的函数,如图如果排的是字符,则把int a int b 改为char。原创 2021-12-15 09:35:05 · 983 阅读 · 0 评论 -
C++: 数组清空(memset函数)
char数组清空(1)for循环清空令char数组每一位都变为\0。注意,\0相当于空格,所以输入的时候打上空格的话,空格后面的内容计算机不会读取。如果想在输入的内容加上空格,用cin.getline()(需要包含头文件<string.h>)如图清空之后是这样的(2)memset函数清空memset是计算机中C/C++语言初始化函数。作用是将某一块内存中的内容全部设置为指定的值, 这个函数通常为新申请的内存做初始化工作。函数作用1,mems原创 2021-12-15 09:33:03 · 13950 阅读 · 1 评论 -
C语言和C++的区别和联系
C语言虽说经常和C++在一起被大家提起,但可千万不要以为它们是一种编程语言。我们来介绍C语言和C++中的区别和联系。首先C++和C语言本来就是两种不同的编程语言,但C++确实是对C语言的扩充和延伸,并且对C语言提供后向兼容的能力。对于有些人说的C++完全就包含了C语言的说法还是有点别扭的。一、C语言是面向过程语言,而C++是面向对象语言我们都知道C语言是面向过程语言,而C++是面向对象语言,说C和C++的区别,也就是在比较面向过程和面向对象的区别。1、面向过程和面向对象的区别面.原创 2021-11-16 10:21:42 · 18987 阅读 · 16 评论 -
C语言/C++学习路线图(2021整理)
C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C++就适应的问题规模而论,大小由之。接下来是小编整理过C/C++工程师必备知识的思维导图。初学者看到这么密集的知识点,是不是有点眼晕呢?的确,C/C++是一门知识面覆盖很广的学科。想学好C/C++的你并不需要慌张,内容虽多,但依然有法可依。只要有足够的耐心和毅力,加上正原创 2021-11-11 10:03:59 · 8498 阅读 · 2 评论 -
百度后端C++,一面、二面 + 主管面面经(已拿offer)
非科班 C++,面试岗位百度后端(C++/PHP研发工程师),看中的是百度作为互联网黄埔军校及后端岗 JD 与自身高契合度,作为应届生有计划的话,能够在百度接触、学习领域包括搜广推等行业领先技术。一面、二面自我介绍 一个 url 输入,到页面加载全过程,越详细越好(一、二面分别问了一次) DNS 解析过程,越详细越好 gTLD 说明一下 Linux 下 100G 日志文件,其中为 url 记录,统计 top10,需要考虑哪些问题,算法设计 Linux 正则表达式搜索 grep shell原创 2021-11-03 15:22:09 · 4052 阅读 · 9 评论 -
2021年C++教程最新版
一、C++教程前言介绍信息量大,难免有误,欢迎评论区留言指正!这部C++教程是大全教程。其内容涵盖了C++语言的基本语法、面向对象的概念和程序设计方法、数据结构基础、模板和泛型程序设计简介。从零开始、由浅入深、层层递进、细致而又详尽地讲解C++这门大型编程语言。这套C++教程能够很好的帮助你入门,让你掌握C++基础并且打开通向高级C++工程师的大门,通俗易懂深入浅出是这套教程最大的特点,让你能够很轻松地学习C++,还有更多详细进阶C++教程等你!也可以关注微信公众号 “C和C加加” 回复“Z转载 2021-07-17 07:31:14 · 1879 阅读 · 0 评论 -
C++书籍推荐(小白变大牛最全书单)
一、C++书籍推荐之手册类(适用所有级别)1、C++程序设计语言(The C++ Programming Language) (更新到C++11)关注博主的微信公众号:C和C加加 回复 “ZXC”相关电子书已备好等你领取,还有额外惊喜哦作者:Bjarne Stroustrup,C++ 之父写的经典 C++ 书籍,内容覆盖C++的所有东西,从语言内核到标准库、编程范式和语言哲学,2013年5月出版的第四版涵盖了 C++11 的内容。2、C++标准程序库(C++ Standard Li.原创 2021-07-16 15:46:35 · 25855 阅读 · 2 评论 -
2021版C++教程,C++进阶教程(最全C++教程)
一、C++教程前言介绍信息量大,难免有误,欢迎评论区留言指正!这部C++教程是大全教程。其内容涵盖了C++语言的基本语法、面向对象的概念和程序设计方法、数据结构基础、模板和泛型程序设计简介。从零开始、由浅入深、层层递进、细致而又详尽地讲解C++这门大型编程语言。这套C++教程能够很好的帮助你入门,让你掌握C++基础并且打开通向高级C++工程师的大门,通俗易懂深入浅出是这套教程最大的特点,让你能够很轻松地学习C++,还有更多详细进阶C++教程等你!也可以关注微信公众号 “C和C加加” 回复“Z原创 2021-07-12 16:16:27 · 8806 阅读 · 5 评论 -
2021年C++入门书籍推荐,从入门到进阶大全
一、C++入门书籍介绍以下仅代表个人观点,如有雷同纯属巧合,如有不同虚心接纳!1、C++ Primer 和习题册(非常全,学什么语言都需要一本比较全的书)也可以关注博主的微信公众号“C和C加加”回复“ZXC”有惊喜哦本书是久负盛名的C++经典教程,其内容是C++大师Stanley B. Lippman丰富的实践经验和C++标准委员会原负责人Josée Lajoie对C++标准深入理解的完美结合,已经帮助全球无数程序员学会了C++.本版对前一版进行了彻底的修订,内容经过了重新组织,更加入了原创 2021-07-06 18:00:04 · 4709 阅读 · 7 评论 -
C++,string怎样判断字符串里面是否含有某个字符串?
一、C语言风格。在C语言中,字符串存储为字符数组,以'\0'结束。 在C的接口中,有strstr函数,可以在字符串中查找另一个字符串。char * strstr(const char *str1, const char *str2);功能为在str1中查找str2,如果存在,那么返回查找到的起始指针,否则返回NULL。参考代码:#include <iostream>#include <string>#include <cstring>using原创 2021-06-24 08:11:58 · 16237 阅读 · 0 评论 -
2021最新C++面试题(附答案)
今天分享给大家的是比较全面的C/C++面试题,也都是C++版本升级之后,重新整理归纳的最新答案,会让C++面试者少走很多不必要的弯路。同时每个C++面试题都尽量做到了详尽的面试解析文档,以确保每个阶段的读者都能看得懂,同时这部分C++面试文档也是可以免费的提供给有需要的同学们学习的!一、计算机基础更多阿里、百度、华为、美团、腾讯、头条C++面试题可以关注微信公众号“C和C加加”回复“面试题”即可获取相关C++面试题!1.C/C++内存有哪几种类型?C中,内存分为5个区:堆(malloc)..原创 2021-06-24 07:13:12 · 29615 阅读 · 2 评论