自定义博客皮肤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)
  • 收藏
  • 关注

原创 算法 Class 006(二分搜索)

在一个有序数组中查找数字,每次一循环可 砍掉一半的值,只要确定了 arr[mid] 与 num 之间的关系。大于num 忽略掉 mid及右边的数字小于 num 忽略掉 mid 及左边的数字。

2025-01-03 22:42:13 349

原创 算法 class 005 (对数器C语言实现)

用来测试你的算法是否正确。怎么做呢?1:比如,写个冒泡排序,作为对比的对象2:生成一个随机数 数组,用来测试3:用冒泡排序和你想要验证的那个排序算法,同时对这个数组排序,所以这个数组我们需要两份一样的。4:需要验证一个验证函数验证5:多次生成随机数组,然后排序验证,如果都没有出错,大概率你写的那个排序就是正确的。

2024-12-30 16:48:10 632

原创 算法 class 004(选择,冒泡,插入)

刚进入 j 循环的样子j 跳出循环后,b 指向最小值的坐标然后交换 i 和 b 位置的 值随后 i ++, b = i , i = j+1;开始新一轮的排序,

2024-12-27 22:25:26 792

原创 算法 class 003

8位 有符号二进制位,能表示正数128位 ,0 ~ 127(2的7次方减1) ,能表示负数128位 ,-1 ~ -128。n 位有符号二进制位,一共能表示 2的n次放个数,正数为0 ~ (2的n-1次方) - 1(再减1),负数为 -1 ~ 负的(2的n-1次方)。

2024-12-25 16:25:49 453

原创 C语言排序

理念:在数组中,把一个数插入对应的位置,使得这个数组依然有序。i 大于 tmp , i + 1 赋值为 i , i 减减随后 end++等于2,i = end,tmp =end+1(那个下标的元素).

2024-12-02 21:19:28 1007

原创 C语言二叉树

度:一个节点含有的子节点的个数叫做这个节点的度。列如A的度就是2叶子节点:没有子节点的节点,叫叶子。例如:D、G、H、F父亲节点:有一个及以上的子节点的节点,叫父节点。子节点:有一个爹,他就是子节点,子节点也能是别人的父节点。父节点也能是别人的子节点。就像你的爸爸,就是关于你的父节点,你自己就是关于你爸的子节点,你爸也是关于你爷爷的子节点。兄弟节点 :同一个爹,的两个及以上的节点叫兄弟节点。G,H就是兄弟节点,因为他们有同一个父节点。

2024-10-30 14:43:27 745

原创 C语言函数重制版(内含指针串讲)

在头文件.h里面放:函数的声明和类型的声明。源文件里放函数的定义。使用时:#include"( 头文件名 ).h",里面有函数的声明,把函数写在另一个.c文件里,主函数里调用就行。

2024-10-16 12:30:57 862

原创 C语言贪吃蛇

只讲逻辑不讲一些基础,基础大概过一遍就行#仓库里面有原代码。

2024-10-07 14:49:28 4762

原创 C语言双向链表

这也就是为什么双向链表不用传二级指针,因为双向链表的默认配置就是有一个哨兵位,因为不能改动这个哨兵位所以,只传一级指针就够用了。先用尾结点的next连接新节点(SB->prev->next),再让新节点的prev(及上一个节点的地址)指向尾结点,再让。哨兵位,一旦创建好了就不能动了,无论什么操作,他的位置都得在第一个,你头插也不能插在哨兵位的前面。存放的地址,但是可以改动这个地址里面的数据,一颗星能做到的仅仅是改动节点里面的。,不等于判断该节点的数据是不是我们要查找的,是就返回该节点地址,不是则让。

2024-09-14 20:02:43 788

原创 C语言单链表

打印始。物理结构:地址不是连续的,逻辑结构:通过某几个地址能够找到一些参数,并把连接起来。这些玩意儿叫节点(多半是结构体类型), 节点里面会放一些数据,以及下一个节点的地址节点:分为两部分,数据(可以放很多也可以很少,具体看需求)以及下一个节点的地址。打印首先,创建一个结构体类型的指针,赋值为NULL(表示为空链表),在插入几个数据之后打印。我们直接传递的是这个变量,这个变量里面存的是地址,由于我们不需要修改实参的数据,所以可以直接使用变量访问。

2024-09-04 07:50:11 634

原创 C语言顺序表

初始化和回收释放物理结构不一定连续逻辑结构一定连续物理和逻辑结构都是连续的一个动态顺序的的写法这两种结构体类型重命名类型一样初始化和回收释放free 完后记得置为NULL。

2024-08-19 10:07:54 312

原创 内存函数和动态内存管理

每次使用指针变量接收完地址后,建议拷贝一份,什么操作都用拷贝的变量区执行,最后free(p) ,p为接收开辟的地址的变量。如果我们想要挪动,就需要先挪最后一位,依次递减挪动,先挪5再432,如果先挪2到4那么4就被修改,就不能达到效果。我这里没有释放空间,不建议模仿,这里因为程序结束会回收,所以问题不大,因为代码短不会影响到后面。原有空间的后面不够配的的情况,在堆上另找一块空间并且会拷贝原空间的内容,再返回新地址。拷贝是完全拷贝了滴,只不过打印的时候用的%s遇见\0就停止以才是这个结果。

2024-08-09 14:16:48 1031 1

原创 C语言预处理

define 可以定义很多东西,比如 ,常量 10000、'a'还能定义关键字 ,一段代码,一个函数,字符串,等等等。#define 定义函数//定义一个符号,内容是一个函数{\//使用这个函数FUNCTIONint main()int a = 66;int b = 43;//对函数进行传参return 0;符号 与 符号的内容之间实现的是 完全替换, 符号后面有什么,那么就是什么,写的时候请注意一些符号,你替换过去是不是会多余。#define 定义宏。

2024-08-04 20:34:00 992

原创 文件操作函数

读取成功,返回相应字符的ASCLL码值(替身为整型),读取失败或者遇见末尾返回。字符a++,字符类型的变量在进行运算时会整形提升,也就是对应的ascll计算。int 类型的原因是字符传递的是ASCLL码值,对应的int的类型十进制数。写的什么字符,就返回什么字符,如果发生错误返回 EOF 并设置错误指示器。接收的是地址,单引号的那个是一个常量字符(没有地址),而字符串就有。从文件中读取字符串。代码如下:这是以读的方式打开的,所以先创建一个文件,再读。作用:从文件中获取字符,读取一个,光标跳转到下一个。

2024-07-31 22:01:55 976

原创 C语言结构体

第一个成员不用管。

2024-07-12 13:27:34 1103

原创 数据在内存中的存储

超过一个字节的数据在内存中就存在着顺序问题,一般分为大端和小端。讨论的是字节的顺序。低地址存高二进制数,高地址存低二进制数。低地址存低二进制数,高地址存高二进制数。在调试窗口中,为了方便观察,显示的是十六进制数,但本质依然是一个32位(int类型)的二进制数。我自己的小疑惑解析:问题是为什么0x11223344就刚好放满呢?答:二进制转16进制就是,每4位表示一个十六进制数,32位能表示8个,也就是说这个11223344,每一位都是一个十六进制数,每一位都需要4个二进制来放。所以能放满。

2024-07-11 09:56:26 639

原创 C语言指针(详细版)

C语言指针万字讲解

2024-06-15 19:27:20 1001 1

原创 C语言操作符

二进制数字由:0~1组成的八进制的每一位数字由:0~7组成的十进制的每一位由:0~9组成十六进制每一位由:0~15组成,可能就得区分(倒也不会从10~15依次用a b c d e f 俩表示十六进制的10就是a);

2024-05-07 15:47:08 1705

空空如也

空空如也

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

TA关注的人

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