1、折半查询
public class TestZheban { public static void main(String[] args) { int[] arr = {1,3,5,6,7,8,9,11,22,27}; int max = arr.length-1; int left = 0; int right = arr.length-1; int count = 0; int key = 3; new TestZheban().fun(arr, left, right,key, count); } public void fun(int[] arr, int left, int right, int key,int count) { count++; int middle = (left + right) / 2; if(null != arr) { if(key == arr[middle]) { System.out.println("第"+count+"次 查到结果 " + arr[middle]);; } else if(key < arr[middle]) { right = middle-1; System.out.println("第"+count+"次 查询 " + arr[middle]);; fun(arr, left, right, key,count); } else { left = middle + 1; System.out.println("第"+count+"次 查询 " + arr[middle]);; fun(arr, left, right, key,count); } } else { System.out.println("数组为空"); } } }
2、 冒泡算法
public class TestMaopao { public static void main(String[] args) { int[] arr = {11,2,5,3,6,4,89,23,44}; for (int i=0; i<arr.length; i++) { for (int j=0; j<arr.length-1; j++) { if(arr[j] < arr[j+1]) { int temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; } } } System.out.print("结果 : " ); for (int i = 0; i < arr.length; i++) { System.out.print(" " + arr[i] ); } } }
3、jdk 自带 Arrays(结果 从小到大)
Arrays.sort(arr); //进行排序 for(int i: arr){ System.out.println(i); }
相关推荐
在本资源中,我们关注的是图形学的四个基本算法,它们是计算机图形学的基石,用于创建各种复杂的视觉效果。这四个基本算法包括直线生成、圆绘制、椭圆绘制。以下是对每个算法的详细解释: 1. 直线生成算法: - **...
**基本原理**:在蚁群算法中,一群虚拟的“蚂蚁”在解决问题的“地图”上移动,每只蚂蚁都会根据当前路径上的信息素浓度和启发式信息(如距离、成本等)来决定下一步的移动方向。信息素浓度反映了路径的吸引力,较高...
本篇文章将深入探讨如何使用C++Builder编程语言实现一个简单的模拟路由器,该路由器基于接收到的链路状态信息应用距离向量算法更新其路由表。 首先,我们需要理解距离向量算法的基本原理。这种算法依赖于“洪泛法”...
基本粒子群算法(Particle Swarm Optimization, PSO)是一种在多维空间中搜索最优解的全局优化算法,由Kenneth E. Clarington和James Kennedy在1995年提出。该算法灵感来源于鸟群和鱼群的社会行为,通过模拟群体中的...
科技伦理审查制度则是对企业在算法研发和应用中遵循道德原则的监督,防止算法滥用,保护用户权益和社会公共利益。企业应当设立专门的伦理审查委员会,对算法可能带来的社会影响进行评估,确保科技发展与社会责任相...
标题"pso算法基本概念3"明确指出了我们要讨论的主题——PSO(Particle Swarm Optimization,粒子群优化)算法的基本概念,而描述中的重复性似乎是为了强调这一主题,但并未提供额外的信息。由于描述没有提供具体的...
"Dijkstra算法更新路由表" Dijkstra算法是一种常用的最短路径算法,广泛应用于计算机网络和交通网络等领域。该算法是由荷兰计算机科学家Edsger W. Dijkstra于1959年提出,目的是为了寻找图中的最短路径。 在计算机...
基本的粒子群算法的单步更新位置,速度的算法,有详细的注释,可读性强
**蚁群算法(Ant Colony Optimization, ACO)**是由Marco Dorigo在1992年提出的一种模拟生物系统中的蚂蚁行为的优化算法。在自然界中,蚂蚁通过释放信息素来找到食物源并返回巢穴,形成最优路径。在ACO中,每只...
标题中的“INS更新算法总结”指的是惯性导航系统(Inertial Navigation System,简称INS)的更新算法概览。惯性导航系统是一种不依赖外部参考信号的自主式导航技术,通过测量载体在三维空间中的加速度和角速度,经过...
在MATLAB源程序中,`基本粒子群算法的matlab源程序.doc`文档可能会包含以下内容:初始化函数、目标函数定义、适应度值计算、速度和位置更新函数、pBest和gBest更新函数以及主循环控制结构。此外,程序还可能涉及参数...
在本文中,我们将深入探讨蝙蝠算法的基本原理、主要步骤以及如何在MATLAB环境中实现。 蝙蝠算法由英国科学家 Xin-She Yang 在2010年提出,它模拟了蝙蝠寻找食物的过程。蝙蝠通过发射高频声波并接收回声来确定目标的...
在多种群遗传算法中,这些基本操作在每个种群内部执行,同时移民算子使得种群间的互动成为可能。 - **初始化种群**:算法开始时,随机生成一定数量的个体,形成初始种群。 - **选择操作**:根据适应度函数评估个体...
应力更新算法是数值模拟中处理材料本构关系的重要方法,特别是在大变形和塑性分析中。本构积分算法,也称作应力更新算法,适用于处理率无关和率相关的材料模型。这种算法的核心在于如何根据材料的应力-应变响应来...
基本蚁群聚类算法是一种借鉴自然界蚂蚁...附件中的“蚁群算法”文件包含了实现这些算法的Matlab源代码,读者可以通过阅读和运行代码,深入理解基本蚁群聚类算法及其改进方法的实现细节,进一步探索和应用在实际问题中。
在计算机图形学中,二维基本图元是构成图像的基本元素,包括点、线和多边形等。本主题主要关注线的生成,特别是通过DDA(Digital Differential Analyzer,数字微分分析器)算法和中点算法来实现。这两种算法是早期...
MP的基本思想是从一个大的原子集合中,每次选择与残差最匹配的一个原子,将其添加到当前的稀疏表示中,然后更新残差。这个过程重复进行,直到达到预设的迭代次数或满足某个停止条件。MP算法的关键步骤包括: 1. ...
在这个"基本人工鱼群算法 C++实现"中,我们可以期待以下关键知识点: 1. **人工鱼群算法原理**:每条“人工鱼”代表一个可能的解决方案,它们在搜索空间中游动,模仿真实鱼类的行为,如觅食、跟随和随机游动。觅食...
【标题】:“杂草优化算法的基本算法” 杂草优化算法(Weed Optimization Algorithm, WOA)是一种基于自然界中杂草生长过程的全局优化算法。在自然界中,杂草的生长和蔓延过程展示出强大的生存适应性和随机性,这些...