自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创

(1) 一棵二叉树有8个度为2的节点,5个度为1的节点,那么度为0的节点个数为 ( ) (网易)(1)满二叉树: 深度为k(k>=1)时节点为2k - 1(2的k次幂-1)当2*i<=n时,有左孩子,其编号为2*i ,否则没有左孩子,本身是叶节点;当2*i<=n时,有左孩子,其编号为2*i ,否则没有左孩子,本身是叶节点;当2*i+1<=n时,有右孩子,其编号为2*i+1 ,否则没有右孩子。当2*i+1<=n时,有右孩子,其编号为2*i+1 ,否则没有右孩子。

2024-08-13 08:27:23 536

原创 线性表

它的下一位继续从1开始报数,数到m的人出列,依次类推,最后剩下一个为猴王。第三次报数: 从被杀死的四号的下一位开始报数,同样是六号,数五个数,6-1-2-3-6,数数完毕,六号被杀死,第三次报数后,剩余人数如下。第四次报数: 从被杀死的六号的下一位开始报数,也就是一号,数五个数,1-2-3-1-2,数数完毕,二号被杀死,第四次报数后,剩余人数如下。第二次报数: 从被杀死的五号的下一位开始报数,也就是六号,数五个数,6-1-2-3-4,数数完毕,四号被杀死,第二次报数后,剩余人数如下。

2024-08-09 18:39:57 988

原创 数据结构

前n项和公式为:Sn=n*a1+n(n-1)d/2或Sn=n(a1+an)/2。如果有常数项,将其置为1 //当f(n)的表达式中只有常数项的时候,有意义 f(n) = 8。1)线性关系 ---》 线性结构 ---》一对一 ----》线性表:顺序表、链表、栈、队列。f(n) //算法的可执行语句重复执行的次数 用问题规模n的某个函数f(n)来表达。算法占用的空间大小。2)层次关系 ---》 树形结构 ---》一对多 --- 》 树。3)网状关系 ---》 图状结构 ---》 多对多 ---》图。

2024-08-07 09:00:00 1312

原创 C高级(5)

3.限制作用域 ,修饰全局变量被限制仅能在本文件中使用,修饰局部变量,作用域被限制在本函数中,但会延长其生命周期。1.存放在静态区/全局区,.bss(未初始化的全局变量和静态变量) .data(初始化的全局变量和静态变量)执行顺序:判断宏的值是否为0,如果不为0编译code1,否则编译code2。外部引用:可以引用其他文件中的全局变量和函数,在本文件中使用。静态型,可以修饰局部变量和全局变量,也可以修饰函数。自动型,修饰局部变量,存放在栈区(一般省略)参数列表:和指向的函数的参数列表一致。

2024-08-03 10:31:29 955

原创 C高级(4):分文件编程&&make工具

步骤:代码写好后,先通过gcc -g进行编译代码,没有错误后,可以通过gdb a.out进行调试,输入l查看文件内容,通过b设置断点,输入r进行运行,n或s进行单步调试,q退出。自动发现更新过的文件而减少编译的工作量,同时,它通过读入Makefile文件文件的内容来执行大量的编译工作。预处理:#开头内容,展开头文件、替换宏定义、删除无用注释,不会检查语法错误。gcc -c xx.c -o xx.o 目标:xx.o 依赖:xx.c。编译:检查语法错误,有错就报错,无错就继续生成汇编文件。

2024-08-03 09:35:32 1003

原创 C高级(3):shell脚本

变量依次从单词表中读取各个单词,每取一次单词,就执行一次循环体中的命令表,循环次数由单词表中的单词数决定,命令表中的命令可以一条,也可以是由分号或换行符分隔开的多条。while语句首先测试其后的命令或表达式的值,如果为真,就执行一次循环体中的命令,然后再测试该命令或表达式的值,执行循环体,直到该命令或表达式为假时退出循环。-o 或运算 例如 [ $a -lt 20 -o $b -gt 100 ] 返回 true。计算表达式值a*b+c-d/b,a=2,b=3,c=15,d=18。

2024-08-02 09:00:00 666

原创 C高级(2):linux命令

其中,tty1 ~ tty7 代表本地控制台终端(可以通过 Alt+F1 ~ F7 快捷键切换不同的终端),tty1~tty6 是本地的字符界面终端,tty7 是图形终端。pts/0 ~ 255 代表虚拟终端,一般是远程连接的终端,第一个远程连接占用 pts/0,第二个远程连接占用 pts/1,依次増长。是可以远程访问的文件系统,这种文件系统在服务器端仍是本地的磁盘文件系统,客户机通过网络远程访问数据。指本地主机中实际可以访问到的文件系统,包括硬盘、CD-ROM、DVD、USB存储器、磁盘阵列等。

2024-08-01 09:30:00 776

原创 C高级(1):Linux简介&&linux安装工具&&shell基础知识

它包括了早期的Bourne Shell和Korn Shell的原始功能,以及某些C Shell脚本语言的特性。最初开发的目的是改进Bourne Shell的一些缺点,并使Shell脚本的编程风格类似于C语言,因而受到广大C程序员的拥护。(3)Korn Shell(简称ksh):Korn Shell由David Korn开发,解决了Bourne Shell的用户交互问题,并克服了C Shell的脚本编程怪癖的缺点。dpkg:离线安装,安装本地包,不能检查软件包的依赖关系,不关系仓库内的软件。

2024-07-31 10:40:12 1457

原创 C基础:结构体 struct

第一个成员在相对于结构体变量起始位置偏移量offset为0的地址处(通俗点来说,就是第一个成员变量的地址与结构体起始位置的地址是相同的),以后每个成员按定义顺序依次存放在offset为该数据成员大小的整数倍的地方,只有double类型存放在4的整数倍的地方(比如int在32位机器位4字节,要从4的整数倍开始存储)。总体上来说,结构体的内存对齐就是一种用空间换取时间的做法,浪费空间来换取性能上的提升。用结构体里面最大的数据类型的大小和8(32位系统和4)进行比较,按照字节数小的为单位开辟空间。

2024-07-29 16:40:31 938

原创 C基础:函数

1.函数基本用法1.函数基本用法1.1 定义和三要素函数是一个完成特定功能的代码模块,其程序代码独立,通常要求有返回值,也可以是空值。函数三要素: 功能、参数和返回值功能:函数要实现的功能参数:参数就是在函数声明时和函数调用时定义的变量。它用于传递信息给函数。参数分为实参和形式参数:【1】实参是在函数调用中实际传递给函数的参数;而形式参数是函数声明中接受实参的参数。实参是有具体的数据。【2】形参只是一个声明的形式,可以理解为一个符号名字。返回值:函数返回值是函数调用后唯一留下的右值。

2024-07-26 10:48:03 1141

原创 C基础:指针

/例如:*(p+1)+1: p+1 = &p[1] ==>*(p+1)=p[1]=a[1]=&a[1][0] ==>*(p+1)+1 =&a[1][1]//修饰p, 指针的指向也就是p不能被修改,但是指针指向的内容也就是*p可以被修改。//再例如:p[1]+1: p[1]=a[1]=&a[1][0] ==>p[1]+1 = &a[1][1]//a的类型int (*)[3]int *p[2] = {a[0], a[1]};大端:数据的低位存储在高地址位,数据的高位存储在低地址位,大端字节序称为MSB。

2024-07-25 11:18:20 955

原创 C基础:数组

1.数组的基本用法1.数组的基本用法1.1 概念数组(Array)是有序元素序列若将有限个类型相同的变量的集合命名,那么这个名称为数组名。重点必须是类型相同和连续的变量集合1.2 定义格式存储类型 数据类型 数组名[元素的个数];例如:(auto) int a[5];数组名:代表数组的首地址,也就是第一个元素的地址。a是地址常量,不能为左值,不能被赋值。数组定义方法:(1)数组名定义规则跟变量名相同,遵循标识符定义规则(2)数组名后使用方括号括起来的常量表达式表示元素个数。

2024-07-22 19:52:15 1399

原创 C基础:控制语句

执行顺序:如果满足if中的表达式则进入if后面语句块1执行,如果不满足则进入下面else if中表达式进行判断,如果条件满足则进入else if下面的语句块2执行,如果不满足继续往后执行,最后如果都不满足则进入else下面语句块3执行。执行顺序:如果满足if中的表达式则进入if后面语句块1执行,如果不满足则进入下面else if中表达式进行判断,如果条件满足则进入else if下面的语句块2执行,如果不满足继续往后执行,最后如果都不满足则进入else下面语句块3执行。对于其他类型,则必须使用if语句。

2024-07-20 10:38:47 680

原创 输入输出

注意:后面输入多余的字符会放在输入缓存区中等待输入。如果后面遇见输入功能的函数,则会完成输入。字符是排队等待输入的,例如流水线上的零件,排队依次等待加工。scanf函数输入回车符的问题,当用%c方式输入字符时,回车符会被下次的%c接收到。注意:用scanf时“”中不要写上除了格式控制字符以外的东西,不然输入的时候要按原样输入才可以。m: 位宽,输出数据的域宽,数据长度<m, 左边补空格,否则按实际输出。因为两次输入的都是int类型,下次输入就不会读到char类型的回车。返回值:正确输入数据的个数。

2024-07-18 13:40:34 308

原创 运算符&表达式&数据类型

1.变量和基本数据类型1.变量和基本数据类型1.1 变量类型的概念变量就是在程序中发生变化的量,变量有类型。变量的类型决定了变量存储占用的空间,以及如何解释存储的位模式。1 字节(byte) = 8 位(bit)1.2 定义格式存储类型 数据类型 变量名;例如:(auto) int a;存储类型:变量存储的位置。数据类型:名字 字节 取值范围类型存储大小值范围char字符类型1 字节-2^7 到 (2^7-1)无符号字符类型1 字节0 到 (2^8-1)int。

2024-07-17 15:42:52 907

原创 计算机数据表示和进制转换

字符数据主要指数字、字母、通用符号、控制符号等等,在机器内都被变换成计算机能够识别的二进制编码形式。计算机中数据的概念是广义的,机内除有前面提到的数值数据之外,还有文字、符号、图像、语言和逻辑信息等等,因为它们也都是以0、1形式存在,所以成为非数值数据。十六进制有0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f共16种数码,逢十六进一,英文缩写HEX。送入计算机的数字,字母,符号等信息必须转换成0、1组合的数据形式才能被计算机接收、存储并进行运算。十进制数,基数为10, 可选用0、1、2……

2024-07-16 20:19:07 1056

原创 vi编辑器和gcc编译器

vi是Linux中最常用的文本编辑器,嵌入式系统开发人员要熟练使用这个工具,vim是其改进版本。vi编辑器中共有三种模式,进入文件是处于命令行模式。

2024-07-16 16:41:04 650

原创 linux基本命令

cp -r 路径/目录文件名 路径:复制指定路径的目录文件到指定路径。移动并新改名: mv 普通文件名.后缀/目录文件名 目标路径/新名字。cp 路径/文件名.后缀 路径:复制指定路径的普通文件到指定路径。cp -r 目录文件名 路径:复制当前路径的目录文件到指定路径。cp 文件名.后缀 路径:复制当前路径的普通文件到指定路径。touch 文件名.后缀 路径:在指定路径下新建普通文件。rm 路径 文件名.后缀:删除指定路径下的文件。cp 路径/文件名 目标路径/新文件名:另存为。

2024-07-15 20:26:52 327

空空如也

空空如也

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

TA关注的人

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