当前位置: 首页 > news >正文

唐山免费网站制作搜索引擎有哪些分类

唐山免费网站制作,搜索引擎有哪些分类,工业皮带怎么做免费的网站,网站建设包括什么科目在写这篇博文之前,先大概说明一下,就是很常见的数组算法如求最大值、一维数组的遍历等,这里就不去专门说明了,只说一些有代表性的,然后就是冒泡排序算法很容易查阅到,这里也不专门说明了,只说明…

在写这篇博文之前,先大概说明一下,就是很常见的数组算法如求最大值、一维数组的遍历等,这里就不去专门说明了,只说一些有代表性的,然后就是冒泡排序算法很容易查阅到,这里也不专门说明了,只说明一个较冒泡难理解一点点的选择排序,最后再说一下,就是这些算法都是练习自己的思维能力,其实有些功能如果你不想做,可以直接用java.util.Arrays这个类库就可以达到效果。

1、一维数组的反转问题:已知数组为arr;

方法1:首尾对换(推荐采用异或去进行交换,具体方法查看我C语言专栏里的博文);

for(int i = 0; i < arr.length / 2; i++){int temp = arr[i];arr[i] = arr[arr.length - 1 - i];arr[arr.length - 1 - i] = temp;
}

方法2:定义两个起点(左端起点、右端起点);

for(int i = 0,j = arr.length - 1; i < j; i++,j--){int temp = arr[i];arr[i] = arr[j];arr[j] = temp;
}

方法3:创建一个新数组,把原数据倒序输入到新数组;

int[] newArr = new int[arr.length];
for(int i = arr.length - 1,j = 0; i >= 0; i--,j++){newArr[j] = arr[i];
}

2、选择排序升序:(推荐采用异或去进行交换,具体方法查看我C语言专栏里的博文)

//外层循环控制轮数,此处的i可以认为是选中空间
for(int i = 0;i <= arr.length - 2;i++){//内层循环控制每一轮执行的次数,此处的j可以认为是比较空间for(int j = i + 1;j <= arr.length - 1;j++){if(arr[i] > arr[j]){int temp = arr[i];arr[i] = arr[j];arr[j] = temp;}}
}

选择排序大概思路:拿升序作例子,从0元素开始,把它分别和后面的元素去对比,如果0元素大于它,那么就去交换,0元素做一轮下来,最小的数就会在0元素位置了,接着第二轮从1元素开始,把它分别和后面的元素去对比,如果1元素大于它,那么就去交换,这一轮做完那么第二小的数会在1元素位置,依次类推,一直做下去,最后实现上就是外层循环为选中的某一个位置的元素,然后内循环就是拿这个位置的元素去和它后面所有的数去对比,最后根据大小进行处理。

3、常规应用:

1)、打印如下的效果
           11111
           22222
           33333
           44444
           55555

//创建二维数组对象	5行5列
int[][] arr = new int[5][5];
//循环操作
//外层循环控制行数/轮数	==>	理解:锁定/定位到每一个一维数组
for(int i = 0;i <= arr.length - 1;i++){//内层循环控制每一行的列数 ==> 理解:定位当前一维数组的每个元素for(int j = 0;j <= arr[i].length - 1;j++){//为当前一维数组的每个元素显示赋值arr[i][j] = i + 1;//获取当前一维数组的每个元素,打印看效果System.out.print(arr[i][j]);}//单独换行System.out.println();
}

2)、打印如下的效果
            1
            22
            333
            4444
            55555

//创建二维数组对象	5行
int[][] arr = new int[5][];
//循环创建5个一维数组对象,将地址关联到二维数组元素位置
for(int i = 0;i <= arr.length - 1;i++){arr[i] = new int[i + 1];//循环操作 => 为当前一维数组的每个元素显示赋值&当前元素内容for(int j = 0;j <= arr[i].length - 1;j++){arr[i][j] = i + 1;System.out.print(arr[i][j]);}System.out.println();
}

3)、综合应用:

import java.util.Random;
import java.util.Scanner;/*** 需求:保存全班的每个组的成绩,并对成绩做统计** 1. 从键盘输入一共有几组* 2. 从键盘输入每一组分别有多少人* 3. 每个人的成绩随机生成(这里用随机方便一点,如果手动输入太累了,其实最后效果都一样)* 4. 统计每一组的最高分、最低分* 5. 统计每一组的平均分* 6. 统计全班的最高分、最低分* 7. 统计全班的平均分* 8. 统计全班的总人数*/
public class Work {public static void main(String[] args) {int[][] array = getArray();System.out.println("--------------------------------------------------------------------------------------------");groupScore(array);allScore(array);}//处理1、2、3public static int[][] getArray(){Random r = new Random();Scanner sc = new Scanner(System.in);System.out.println("请输入一共有多少组:");int groupNum = sc.nextInt();while (groupNum < 1) {System.out.println("输入有误,重新输入一共有多少组:");groupNum = sc.nextInt();}int[][] arr = new int[groupNum][];for (int i = 0; i < groupNum; i++) {System.out.println("请输入第" + (i + 1) + "组有多少人:");int peopleNum = sc.nextInt();while (peopleNum < 1) {System.out.println("输入有误,重新输入第" + (i + 1) + "组有多少人:");peopleNum = sc.nextInt();}arr[i] = new int[peopleNum];for (int j = 0; j < peopleNum; j++) {arr[i][j] = r.nextInt(100) + 1;}}sc.close();for (int i = 0; i < arr.length; i++) {System.out.print("第" + (i + 1) + "组:");for (int j = 0; j < arr[i].length; j++) {System.out.print("第" + (j + 1) + "人成绩=" + arr[i][j] + "\t");}System.out.println();}return arr;}//处理4、5public static void groupScore(int[][] arr) {for (int i = 0; i < arr.length; i++) {int max = arr[i][0];int min = arr[i][0];int sum = 0;for (int j = 1; j < arr[i].length; j++) {if (arr[i][j] > max) {max = arr[i][j];}if (arr[i][j] < min) {min = arr[i][j];}sum += arr[i][j];}System.out.println("第" + (i + 1) + "组最高分为:" + max + ",最低分为:" + min + ",平均分为:" + (sum / arr[i].length));}}//处理6、7、8public static void allScore(int[][] arr) {int max = arr[0][0];int min = arr[0][0];int sum = 0;int peopleNum = 0;for (int i = 0; i < arr.length; i++) {peopleNum += arr[i].length;for (int j = 0; j < arr[i].length; j++) {if (arr[i][j] > max) {max = arr[i][j];}if (arr[i][j] < min) {min = arr[i][j];}sum += arr[i][j];}}System.out.println("全班最高分为:" + max + ",最低分为:" + min + ",平均分为:" + (sum / peopleNum));}
}

本电子书目录:《Java基础的重点知识点全集》

http://www.wangmingla.cn/news/18282.html

相关文章:

  • 分类目录网站怎么做谷歌独立站seo
  • 襄阳网站制作网络营销推广手段
  • 高端企业网站建设服务商本周国内新闻
  • .mil 域名网站有哪些安卓优化清理大师
  • 创业水务公司网站站长工具app下载
  • 厦门网站建设有限公司seo网上课程
  • 有做soho网站的吗网络营销培训课程
  • 创新的网站建设公司网络优化工程师是做什么的
  • 深圳做网站(信科网络)推广普通话内容
  • 专做美妆的网站竞彩足球最新比赛
  • 义乌网站建设技术托管排名优化工具下载
  • 望京网站建设公司网络优化大师
  • 免费做网站公司哪家好百度学术官网论文查重免费
  • 做兼职什么网站最靠谱曹操博客seo
  • 现在建网站做淘宝联盟推广能赚钱吗网络的推广方式有哪些
  • 北京外贸网站建设公司百度入口官网
  • 专业做网文的网站有哪些方象科技的企业愿景
  • app产品网站模板免费下载怎么做好seo推广
  • 哪个网站可以查企业信息seo思维
  • 个人网站备案所需材料网站搭建源码
  • 广州购物商城网站开发平台推广公司
  • 用dw制作网站建设专业seo优化推广
  • 广州哪家做网站价格好人民网 疫情
  • 杭州市在建工程项目郑州seo外包顾问
  • udacity 网站开发青岛百度快速排名优化
  • 莆田网站制作设计seo需要付费吗
  • 有做网站的公司吗seo教程seo优化
  • php网站后台自己开网店怎么运营
  • 网站如何上传数据库百度指数人群画像
  • 做图模板网站有哪些内容seo关键词首页排名代发