算法
kennjry
这个作者很懒,什么都没留下…
展开
-
寻找数组的中心索引
寻找数组的中心索引1.数组中某一个下标,左右两边元素之和相等,该下标为中心下标 //先统计出整个数组的总和,然后从第一个数开始叠加 //总和递减见面的元素,前面的元素递增,返回它们的中间元素 public static int mid(int[] nums ) { int sum1=0; int sum2=0; for(int i=0;i<nums.length;i++) { sum1+=nums[i];//先统计出整个数组的总和, } for(int i=0;i&l原创 2021-06-23 14:29:09 · 116 阅读 · 0 评论 -
2021-06-23
一、双指针算法:i从0开始,j从1开始:原地求出数组中不重复元素的个数,返回不重复元素的个数代码如下(示例):public static int doublenode(int[] nums) { int i=0;//慢指针,并用来记录不重复元素的个数 int j=1;//快指针 int n= nums.length; for(j=1;j<n;j++) {//从快指针开始循环 if(nums[i]!=nums[j]) {//如果慢指针所指个数不等于快指针 i++;//原创 2021-06-23 09:28:22 · 89 阅读 · 0 评论 -
求1-n中素数的埃筛算法
学习内容:求1-n中素数的埃筛算法代码如下(示例):public static int eratosthenes(int n) { //创建了一个布尔类数组 boolean[] isPrime=new boolean[n];//初始化为false,所以用false代表素数,true代表合数 int count=0; for(int i=2;i<n;i++) { if(!isPrime[i]){//如果值为false,count++,当i=2时,++;之后会进入一个循环原创 2021-06-23 09:18:10 · 81 阅读 · 0 评论