- 博客(15)
- 收藏
- 关注
原创 有序表——算法描述
进入循环则说明有序表有元素 ,i--表示如果已插入元素比未插入元素大则会一直往前移直到找到比插入元素小的位置并且往后挪动已插入元素(这里是按照从小到大的逻辑来的)(没进一次循环则会挪动一次),知道找到位置结束循环,在循环外进行插入,并且有序表的长度要+1。第三步:当有序表有元素则要判断,插入的元素和已插入的元素大小,如果插入元素比前面元素大则直接插入到最后,如果不是,则要移动已插入元素的位置,将已插入元素后移,最后插入到合适的位置。下段代码中i最小为-1为-1的时候则是有序表里没有元素的时候。
2024-04-22 15:20:26 249
原创 数据结构——双链表
另外,由于双链表中的每个节点都有两个指针,因此在插入和删除节点时,我们需要更新这两个指针,而不仅仅是单链表中的一个。虽然从内存占用的角度看,双链表因为每个节点多了一个指针域而占用更多的内存,但从功能和操作的灵活性来看,双链表提供了更多的可能性。在创建链表结构时,单链表通常只需要定义一个节点结构体,该结构体包含一个数据域和一个指向下一个节点的指针域。总的来说,双链表提供了更高的灵活性和效率,特别适用于需要双向遍历或在链表中间进行插入和删除操作的场合。而双链表则需要在这个基础上增加一个指向前一个节点的指针域。
2024-04-22 14:48:59 317
原创 数据结构之手撕线性表(有代码注释,持续更新直到完美位置,早看早享受更新)一周更一次,全网最细。
假设线性表的元素类型为E,则每个元素所占用存储空间大小(即字节数)为sizeof(E),(sizeof()为c语言中的一个函数,是求内存空间的大小),整个线性表所占用存储空间大小为 n×sizeof(E) ,其中 n 就是线性表的长度。连续存储※:顺序表就是数组,但是在数组的基础上,它还要求数据是从头开始连续存储的,不能跳跃间隔。②一致性:所有元素的性质相同,元素具有相同的数据类型。,线性表中的位置只取决于它们的序号,所以在一个线性表中可以存在两个值相同的元素。存在唯一的开始元素和终端元素。
2024-04-14 17:41:52 244 3
原创 c语言中memcpy与memmove函数(详解)
无符号整形)第三个参数的类型是size_t(无符号整形),它表示要拷贝数据的字节数,它的作用是告诉函数需要拷贝的字节数是多少,以便函数精准的拷贝该数目字节数空间的内容到目的地.1,首先这是一个内存拷贝的函数,为了适合所有类型的拷贝,我们只能一个字节一个字节的拷贝,拷贝时应该用char类型进行。2,函数需要传入如下参数:1,拷贝目的地地址 2,拷贝数据来源地址 3,所需要拷贝的字节数。3,使用前应了解要传输的数据类型,字节参数应该是字节参数的倍数,不然传输的数据不和类型匹配。:从源头指向的内存块 拷贝。
2023-11-01 19:51:41 168
原创 简单编程思想-c语言题目讲解
解题思路:①定义三角型的各边都时double型,输入三边的边长,利用两边之和大于第三边来判断是否能构成一个三角形。当Δ=0时方程有一个根,Δ0时方程有两个实数根。②Δ=0,有且只有一个实数根,公式就变为-b/2a,之后带入值进行计算即可得到根的值。③Δ>0,有两个实数根,带入公式计算x1=(-b+Δ)/2a。思路:①我们只需要根据a,b的值来判断Δ的取值,②根据闰年的判断条件,写出对应的选择判断语句。x1,2=(-b±根号下b²-4ac)/2a。输入描述:输入三角形的三边a,b,c。
2023-03-09 11:49:37 324
原创 数据的存储-知识点详解
什么是大端,小端:大端(存储)模式,是指数据低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中;小端(存储)模式,是指数据的低位保存在内存的低地址中,而数据的高位,保存在内存的高地址中;1字节 = 8比特位int 类型 4字节 = 32bitshort 类型 2字节 = 16bitchar 类型 1字节 = 8bit列如:一个16bit的short型x,在内存中的地址为0x0010x的值为0x1122,那么0x11为高字节0x22为低字节。对于大端模式,就将。
2023-02-27 00:39:12 115
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人