
数据结构
·Cx330·
宇宙中孤独且稀有的星星。
展开
-
算法打卡DAY01 - - 二分查找【C语言】
二分查找知识链接:点击这里知识点巩固第一题:/* C语言 *//* 最基础,可以直接套用知识点里例举的例子写 */int search(int* nums,int numsSize,int target){//nums是数组,numsSize是数组长度,target是目标值 int left=0, right=numsSize-1; while(left<=right){//循环查找目标值 int mid=left+((right-left)>>1);//右移 i原创 2021-11-19 19:44:03 · 595 阅读 · 1 评论 -
LeetBook --初级算法(字符串1_反转字符串)
1.反转字符串编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。示例 1:输入:[“h”,“e”,“l”,“l”,“o”]输出:[“o”,“l”,“l”,“e”,“h”]示例 2:输入:[“H”,“a”,“n”,“n”,“a”,“h”]输出:[“h”,“a”,“n”,“n”,“a”,“H”原创 2021-05-17 22:10:56 · 157 阅读 · 0 评论 -
LeetBook --初级算法(数组1)
1.删除排序数组中的重复项给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。说明:为什么返回数值是整数,但输出的答案是数组呢?请注意,输入数组是以「引用」方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。你可以想象内部操作如下:// nums 是以“引用”方式传递的。也就是说,不对实参做任何拷贝int len = remove转载 2021-05-16 09:48:05 · 167 阅读 · 0 评论 -
常用的六种排序算法(冒泡、选择、插入、堆、归并、快速)C语言版!
常用的六种排序算法(冒泡、选择、插入、堆、归并、快速),C语言版!文章目录一、冒泡排序二、选择排序三、插入排序四、堆排序五、归并排序六、快速排序一、冒泡排序冒泡排序就是重复“从序列右边开始比较相邻两个数字的大小,再根据结果交换两个数字的位置”这一操作的算法。在这过程中,数字会想泡泡一样,慢慢从右边往左边“浮”到序列的顶端,所以这个算法才被称为“冒泡排序”。其时间复杂度为:O(n^2)。代码实现:int a[N]={3,4,6,7,1,2,8,9,5,0};int temp,i,j;for(i原创 2021-05-12 16:25:08 · 470 阅读 · 0 评论