`
wuhoujian322
  • 浏览: 65527 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Java基础知识回顾第一篇 - 数组和List之间的相互转换 | 二分法查找 | 冒泡排序

阅读更多

1、System.arrayCopy(source,0,dest,0,x):语句的意思就是:复制源数组从下标0开始的x个元素到目标数组,从目标数组的下标0所对应的位置开始存取;

 

2、Arrays.sort(数组名)为数组排序的操作,但这个方法在java.util这个包里面,所以在用到的时候需要先将它导入;

 

3、二分查找法

package com.tu.test;

/**

 * 二分法查找

 *

 */

public class BubbleTest {

public static void main(String[] args) {

int [] arrs = {1,2,3,4,5,6,7,8};

System.out.println(BubbleTest.sort(arrs, 5));

}

 

public static int sort(int [] arrs,int value) {

int low = 0;

int high = arrs.length - 1;

 

while (low <= high) {

int middle = (low + high) / 2;

if (arrs[middle] == value) {

return middle;

}

 

if (arrs[middle] > value) {

high = middle - 1;

}

 

if (arrs[middle] < value) {

low = middle + 1;

}

}

 

return -1;

}

}

 

4、冒泡排序

package com.tu.test;

/**

 * 冒泡排序

 *

 */

public class SortTest {

public static void main(String[] args) {

int [] arrs = {1,23,2,54,4,99,100,3};

SortTest.sort(arrs);

}

 

public static void sort(int [] arrs) {

System.out.println("=====排序前=====");

for (int i = 0;i < arrs.length; i++) {

System.out.println(arrs[i]);

}

 

for (int i = 0; i < arrs.length; i++) {

for (int j = i + 1; j < arrs.length; j++) {

int temp = 0;

//交换位置

if (arrs[i] > arrs[j]) {

temp = arrs[i];

arrs[i] = arrs[j];

arrs[j] = temp;

}

}

}

 

System.out.println("=====排序后=====");

for (int i = 0;i < arrs.length; i++) {

System.out.println(arrs[i]);

}

}

}

 

注:二分法查找仅针对有序数组,如果一个数组无序,结合冒泡排序,先使数组有序,再使用二分法进行元素查找!

 

5、数组和List之间的相互转换

数组转List:Arrays.asList

List转数组:使用List的toArray()方法

0
5
分享到:
评论

相关推荐

    数据结构快速排序二分法查找

    * 算法设计:快速排序和二分法查找可以作为算法设计的基础,例如在解决其他复杂问题时可以使用快速排序和二分法查找作为子问题的解决方案。 在软件水平考试和计算机等级考试中,快速排序和二分法查找是非常重要的...

    C语言实现的二分法快速查找|二分法排序|二分法查找C#

    二分查找(Binary Search),又称折半查找,是一种在有序数组中查找特定元素的搜索算法。搜索过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜索过程结束;如果某一特定元素大于或者小于中间元素,...

    冒泡排序、快速排序和二分法查找的分析 Java

    ### 冒泡排序、快速排序和二分法查找的分析:Java实现 #### 冒泡排序(Bubble Sort) 冒泡排序是一种简单的排序算法,它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列...

    Java程序设计基础:一维数组应用查找二分法查找).pptx

    一维数组应用 ——二分法查找 目录 课程导入 1 清楚并牢记二分法的实现条件 2 理解二分法的实现思路 3 读懂二分法的实现代码 数组的查找——二分法查找 也称拆半查找法,是一种高效的查找方法,前提条件是数组元素...

    java 冒泡算法和插入法排序,二分法查找

    本文将深入探讨Java中的冒泡排序、插入排序以及二分法查找这三种基础算法,这些都是面试时经常会被问到的技术点。 首先,让我们从冒泡排序开始。冒泡排序是一种简单直观的排序算法,它重复地遍历待排序的数列,一次...

    21天学会Java之(Java SE第八篇):数组、冒泡排序法、二分法查找

    数组 数组的定义 数组是相同类型数据的有序集合,数组描述的是相同类型...数组本身就是对象,Java中对象是在堆中的,因此数组无论保存原始类型还是其他对象类型,数组对象本身是在堆中存储的。 数组声明 在声明数组变量

    java数组练习作业按逆序存放并输出二分法将一个数据插入到该数组二维数组对角线之和.pdf

    Java数组练习作业按逆序存放并输出二分法将一个数据插入到该数组二维数组对角线之和 在本资源中,我们将介绍Java数组的相关知识点,包括数组的逆序存放和输出、二分法插入数据到数组、计算二维数组对角线之和等。 ...

    java 二分法查找案例与数组排序案例.docx

    ### Java 二分法查找与数组排序案例分析 #### 数组排序案例 在Java中,对数组进行排序是一项常见的操作,通常我们有两种排序方式:升序(从小到大)和降序(从大到小)。下面我们将分别介绍这两种排序方法的具体...

    Java二分法查找数组元素.zip

    二分法查找是一种常用的查找算法,也称为折半查找。它适用于有序数组中查找某个元素的位置。二分法查找的思路是将数组分成两部分,每次查找都将待查找区间缩小一半,直到找到目标元素或者待查找区间为空为止。 ...

    冒泡排序以及二分法查询

    冒泡排序以及二分法查询冒泡排序以及二分法查询冒泡排序以及二分法查询冒泡排序以及二分法查询冒泡排序以及二分法查询

    c++ 二分法查找 二分法排序 混合排序 希尔排序 插入排序

    binary sort,二分法查找,binary search, 二分法排序,merge sort 混合排序,shell sort 希尔排序,insertion sort 插入排序。数据结构 data structure

    Java常用排序算法&程序员必须掌握的8大排序算法+二分法查找

    本资料包聚焦于"Java常用排序算法"和"程序员必须掌握的8大排序算法",并深入探讨了"二分法查找"这一高效搜索技术。 首先,我们来看八大排序算法。这些算法包括: 1. **冒泡排序**:最简单的排序方法,通过不断交换...

    java数组与简单排序

    总的来说,“java数组与简单排序”涵盖了数据结构、查找和排序的基础知识。掌握这些概念对于理解和编写高效的Java程序至关重要。通过实践和理解这些算法,开发者能够更好地应对各种编程挑战,提升程序性能。

    二分法求数组和

    根据给定的信息,本文将详细解释“二分法求数组和”的实现原理与方法,同时结合递归思想进行深入探讨。 ### 一、二分法求数组和概述 在计算机科学中,二分法通常被应用于有序数组的搜索问题上。然而,在本例中,...

    用javascript实现的十大排序算法详解

    在编程领域,排序算法是计算机科学的基础之一,它在数据处理和分析中起着至关重要的作用。本篇文章将深入探讨如何使用JavaScript实现十大经典排序算法,帮助开发者更好地理解和运用这些算法。 1. 冒泡排序(Bubble ...

    冒泡 快速排序 选择排序 二分法 插入 快速选择

    在计算机科学领域,排序算法...冒泡和插入排序简单易懂,但效率较低;快速排序和二分法在处理大量数据时表现出色,而选择排序适用于元素分布均匀的情况。了解并熟练掌握这些排序算法对于编程和算法设计有着重要的意义。

    二分法排序和查找(C#)

    二分法,也称为折半查找,是一种在有序数组中高效地查找特定元素的搜索算法。它的基本思想是每次比较中间元素与目标值,根据比较结果缩小搜索范围,直到找到目标值或者确定不存在为止。这种方法在C#编程中非常常见,...

    C# 简单的冒泡、快速排序及二分法查找.zip

    总结来说,“C# 简单的冒泡、快速排序及二分法查找.zip”提供了一个学习和实践C#编程语言中基础排序和查找算法的机会。通过这个资源,学习者可以深入理解排序算法的工作原理,提高编程技能,并为解决更复杂的计算...

    java算法——二分法查找

    二分法查找 *进行二分法查找的前提是数组已有序 *查找范围的上下界

    Java常用高效8大排序算法与二分法查找

    本文将深入探讨Java中常用的八大排序算法以及二分法查找,旨在帮助算法爱好者和开发人员提升解决问题的能力。 首先,让我们来看Java中的八大排序算法: 1. 冒泡排序:这是一种简单的排序方法,通过重复遍历待排序...

Global site tag (gtag.js) - Google Analytics