- 博客(13)
- 收藏
- 关注
原创 插入排序和希尔排序
希尔排序在处理大量数据时非常有效,与其他排序算法相比性能较好。先学会插入排序有利于理解希尔排序。希尔排序通过比较相距gap间隔的元素来进行,这个过程称为预排序,各趟比较所用的距离随着gap的变动而减小,直到只比较相邻元素的最后一趟排序为止,就是当gap为1时此时就是插入排序。gap 越大,大的值更快的调到后面,小的值可以更快调到前面,越不接近有序。gap 越小,跳的越慢,但是越接近有序,当gap ==1;就是插入排序。关于gap为具体为何值没有定论,但一定要留一个gap==1;
2024-08-04 11:49:20 453
原创 linux基本操作指令
可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个文件。2which 要求系统打印出所指定指令名称,在系统的所在路径。mkdir - p 路径(可以创建一串路径,大娃套小娃那种)1.指令的本质都是程序--指令,程序,可执行程序都是一回事。usr表示用户,bin是二进制文件格式,binary的缩写。指令会出现疯狂打印的情况(失控),ctrl+c终止异常命令。普通用户加很麻烦,直接让root加就行,其他用户就都能用。2根据用户名,找到该用户目录下的“桌面文件夹”可以先备份到别的地方,mv(移动)
2024-03-24 21:00:11 285 1
原创 C语言实现数组栈详解
realloc分配的空间是连续的,所以可以把它当数组用。把分配的内存地址赋值给a,然后扩容。a存的是内存的地址,所以把x赋值a内地址的内存中,然后top增加。只需要把top的值减一,之后在入栈时,直接x覆盖掉之前的值。因为top初始值为0,所以这里减一访问,[ ]解引用符号。C语言没有bool类型,要引用头文件。恭喜你学完啦,快去奖励自己一下吧!1.当top=capacity。capacity:数组的容量。因为 top相当于数组的下标。top:记录栈顶位置。
2024-01-29 22:23:37 138
原创 新手关于scanf的误区
已知 int i,j,k;若从键盘送入i,j,k的值分别为1,2,3时,当有多个值要输入时,可以用空格,回车和tab隔开,数量不限有就行。这就是为什么,很多编程启蒙题目会用scanf和逗号做文章。scanf最好不要有非输入控制符,因为用不上。不然就又收获到崩溃的程序和崩溃的自己。B)1(回车)2(回车)3(回车)那你在键盘上输入的时候就也要。则错误的输入方式是。先认识scanf("D)1(回车)2 3。
2023-12-01 22:31:14 486 1
原创 带头双向循环链表的删除
所以head指向结构体的地址,直接free(head) 可以直接把结构体的空间释放,不会因为什么形参是实参的拷贝而释放失败。head接收的是结构体的地址,head是形式参数,但是因为结构体是malloc出来的空间,可以在整个项目下使用。if (n == head) // 检测环。
2023-12-01 21:49:42 360 1
原创 为什么单链表用malloc,顺序表用realloc
malloc的返回值是一个对象,而calloc的返回是一个数组。malloc分配的内存空间在逻辑上是连续的,而在物理上可以不连续。但是我们关注的是逻辑上的连续,其它的,操作系统会帮着我们处理。2,后面的空间被占用,就找另一块地址,存放之前的内容和扩容后的内容,然后之前的地址自动释放,不用特意free。所以顺序表是类似数组排列,也就可以使用。1,往后面扩容,后面有空间直接扩容。来访问顺序表内其他元素。
2023-11-04 14:24:35 99 1
原创 c语言多组循环习题
while循环是先判断括号内条件是否为真,如果为真就执行循环体,执行完循环体后再次判断条件是否为真,如果为真就继续执行循环体,直到条件为假为止,c语言内0为假,非0为真。
2023-07-15 17:07:22 50 1
原创 c语言0基础练习题第二期
if和else只能控制下方的一条语句,若要控制多条;if(表达式【若表达式真,则执行语句。用来放置数值和字符等的“盒子”。要使用变量,要先进行。,如果没有进行初始化,变量会被放入不确定的值,称。int n =1;类型 变量名 (变量名可自己定义)%d 整形(用来输出十进制整数)找到变量的地址并把输入的字符存入。输入函数 接收键盘输入的值。不同数据类型,用不同输出格式。多组循环测试,不急之后在讲。
2023-07-14 17:47:07 63 1
原创 say hello
这种公司it技术不是他们的核心,招it团队开发一些内部系统提高公司效率(一定要贴近核心业务,用技术去实现业务,体现技术价值)只在内部用,用户量不多不涉及海量用户,不咋存在性能问题,对技术的挑战很少,在这种公司待几年,不利于出去找其他工作。我觉得学习编程就是自己先了解体系 , 大概模样 , 再去细学来龙去脉. 实践可是加深印象最好用的方式了 .建议每天学习和敲代码三小时 , 刚开始学不懂得肯定很多,边查边敲,调试可好找缺陷了.还没有最想去的公司,但听说不要去非互联网的传统公司做技术,会使技能成长很慢。
2023-06-13 19:15:25 59 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人