21xrx.com
2024-09-17 04:03:10 Tuesday
登录
文章检索 我的文章 写文章
Java面试必备:常用的算法实现练习
2023-06-15 15:36:52 深夜i     --     --
Java面试 算法实现 排序算法

在Java面试中,算法实现是一个非常重要的考察点。如果你掌握了常用的算法实现,不仅能够帮助你在面试中更好地表现,还能够提升你的编程能力。那么,本文就为大家介绍一些常用的算法实现案例和练习,帮助大家在Java面试中更加从容应对。

1.冒泡排序

冒泡排序是一种比较简单的排序算法,它的时间复杂度为O(n^2)。它的基本思想是通过比较相邻的元素,将较大的元素逐步向后移动,每次遍历都将最大的元素放到数组的最后面。

核心代码:

public static void bubbleSort(int[] arr){

 int len = arr.length;

 for(int i=0;i

  for(int j=0;j

   if(arr[j]>arr[j+1]){

    int temp = arr[j];

    arr[j] = arr[j+1];

    arr[j+1] = temp;

   }

  }

 }

}

2.选择排序

选择排序是一种简单的排序算法,它的时间复杂度为O(n^2)。它的基本思想是每次从无序序列中找出最小的元素,将其放到有序序列的末尾,直到所有元素都排好序为止。

核心代码:

public static void selectionSort(int[] arr){

 int len = arr.length;

 for(int i=0;i

  int minIndex = i;

  for(int j=i+1;j

   if(arr[j]

    minIndex = j;

  }

  int temp = arr[i];

  arr[i] = arr[minIndex];

  arr[minIndex] = temp;

 }

}

3.插入排序

插入排序是一种比较简单的排序算法,它的时间复杂度为O(n^2)。它的基本思想是将未排序的元素逐一插入到已经排序的序列中,从而得到一个新的、有序的序列。

核心代码:

public static void insertionSort(int[] arr){

 int len = arr.length;

 for(int i=1;i

  int preIndex = i-1;

  int current = arr[i];

  while(preIndex>=0 && arr[preIndex]>current){

   arr[preIndex+1] = arr[preIndex];

   preIndex--;

  }

  arr[preIndex+1] = current;

 }

}

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复