![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
xiaocai的算法之路
xiao_cai_istan
一个自学的小菜
展开
-
两数之和-无序数组
给定一个整数数组numbers,从数组中找出两个满足相加之和等于目标数target。 假设每个数组只对应唯一的答案,而且不可以重复使用相同元素。 返回两数的下标值,以数组形式返回。下标值不可相等 直接两层循环遍历,然后让每个数值进行相加,直到等于target的时候跳出循环 c代码如下: #include <stdio.h> int main(int argc, char const *argv[]) { int arr[6] = {1,2,3,4,5,6}; ..原创 2022-04-18 22:31:59 · 218 阅读 · 0 评论 -
两数之和-有序数组
给定一个升序排列整数数组numbers,从数组中找出两个满足相加之和等于目标数target。 假设每个数组只对应唯一的答案,而且不可以重复使用相同元素。 返回两数的下标值,以数组形式返回。下标值不可相等。 解法一:暴力破解 直接两层循环遍历数组,让这个数组中的数值两两相加,如果最后没有找到这两个数,就返回null #include<stdio.h> int main(int argc, char const *argv[]) { int arr[7] = {2,..原创 2022-04-18 22:28:16 · 164 阅读 · 0 评论 -
删除排序数组中的重复项
题目:一个有序数组nums,原地删除重复出现的元素,使每个元素只出现一次,返回删除后数组的新长度 不能使用额外的数组空间,必须原地修改输入数组并在使用o(1)额外空间的条件下完成 例如:输入:【0,1,2,2,3,3,4】 输出:5 使用双指针算法 public static int removeList(int[] nums) { if(nums.length == 0){ return 0; } int i = 0; for(int..原创 2022-04-18 22:27:03 · 54 阅读 · 0 评论 -
统计素数个数-爆破
直接将统计的素数写入循环,可以从2开始,判定2到要判定的数减1是否有数能被整除,若没用,为素数,若有,则不是 public static int bf(int n){ int count = 0; for(int i = 2; i < n; i++) { count += isPrime(i) ? 1 :0; // 判定当前数值是否为素数,是返回1,不是则为0 } return count; } private static boole..原创 2022-04-10 22:05:25 · 277 阅读 · 0 评论 -
统计素数个数-埃氏筛选
找到每个素数的倍数数,建立一个布尔数组,将倍数数改为true,表示为非素数,其余false表示为素数。 public static int eratost(int n){ boolean[] isPrime = new boolean[n];//建立一个布尔数组,将其值全部填充为false int count = 0; for(int i = 2;i < n;i++) { if(!isPrime[i]){ //若此标记位为..原创 2022-04-10 22:02:54 · 1018 阅读 · 0 评论