前一篇回顾了一下Java的插入排序,这次继续Java的冒泡排序。
生活如此无奈,但是程序依旧经典,送上代码,让我们一起感受程序的快乐
package com.honzh.mwq.sort; /** * 冒泡排序. * * 用我自己的方式解释一下哈,假如有N个数,是无序的 * * 1.从第一个数开始和后面N-1的数比较,发现有比自己小的就交换位置 * 2.从第二个数开始和后面N-2的数比较,同样发现有比自己小的就交换位置 * 直到N-1结束. * * * @author qinge * */ public class BubbleSort { public static void main(String[] args) { // 数组元 int[] orgins = { 2, 1, 5, 4, 9, 8, 6, 7, 10, 3, 3 }; // 排序前的数 for (int num : orgins) { System.out.print(num + "、"); } System.out.println(); // 获取数组元的长度 int length = orgins.length; // 从第1个数开始比较,直到N-1 for (int i = 0; i < length; i++) { // 从第i+1开始,和i位置的数进行比较 for (int j = i + 1; j < length; j++) { // 记录原来的数 int temp = orgins[j]; // 如果i位置的数大,就和j位置的数进行交换 if (orgins[i] > temp) { orgins[j] = orgins[i]; orgins[i] = temp; } } } // 排序后的数 for (int num : orgins) { System.out.print(num + "、"); } } }
远离浮躁的社会,平静的享受编程。
相关推荐
冒泡排序是一种基础且经典的排序算法,主要应用于计算机科学领域,特别是在编程语言如Java中。它的名字来源于排序过程中较小的元素像气泡一样逐渐“浮”到数组或列表的顶端。这个PPT文档很可能是详细介绍了Java实现...
冒泡排序是最简单的排序算法之一,通过不断交换相邻的错误顺序元素来实现排序。在Java中,可以使用嵌套循环来实现冒泡排序。虽然冒泡排序效率相对较低,但对于小规模数据或教学用途,它是很好的选择。冒泡排序的时间...
首先,我们来回顾一下经典的冒泡排序(Bubble Sort),这也是压缩包中文件名“bubble_8_elements.mid”所对应的排序算法。冒泡排序是一种简单的比较排序,它的基本思想是通过重复遍历待排序的元素列表,依次比较相邻...
Java数据结构与算法是计算机科学中的核心...同时,理解Applet及其源码可以帮助我们回顾Java的历史,理解Web开发技术的演进。通过深入研究这些主题,开发者可以提升自己的专业技能,更好地适应不断变化的软件开发环境。
首先,"JAVA经典算法40题.doc"可能包含了一些基础的算法题目,如排序(冒泡排序、选择排序、插入排序、快速排序、归并排序)、搜索(线性搜索、二分搜索)、图论(最短路径问题、拓扑排序)以及动态规划等。...
排序算法是算法中最基础也是最重要的部分之一,包括冒泡排序、选择排序、插入排序、快速排序等。 - **冒泡排序**:通过重复比较相邻两个元素并交换顺序,使得较大的元素逐步向后移动,最终完成排序。 - **快速排序*...
对于小规模数据,时间复杂度为O(n log n)的排序算法,如插入排序或冒泡排序,可能是可行的选择。然而,面对大规模数据,O(n log n)时间复杂度的算法如归并排序、快速排序和堆排序更为高效。其中,快速排序和堆排序...
这可能涉及到冒泡排序、选择排序等基础排序算法,这些算法能帮助理解数组元素的比较和交换过程。 4. 随机生成不重复的整数:Java的`java.util.Random`类可以生成随机数,通过设定范围和排除重复,可以生成[0-n)之间...
8. 排序算法:如冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序等,它们对数组或其他数据结构进行排序。 文件名"newreview"可能代表作者对这些主题进行了回顾和总结,可能包含了各种实例、练习和解决...
数据结构和算法部分,大纲通常会要求考生理解并能运用简单的数据结构,如数组、链表、栈、队列,以及一些基础算法,如排序(冒泡排序、选择排序、快速排序等)、查找(线性查找、二分查找)等。这些知识在实际编程...
常见的编程题目可能包括排序算法(冒泡、选择、插入、快速等)、搜索算法(线性、二分查找)、数据结构(栈、队列、链表、树等)的应用,以及文件操作和网络编程等。 复习Java时,应重视以下几个关键点: - **基础...
1. **排序算法**:如快速排序(Quick Sort)、归并排序(Merge Sort)、冒泡排序(Bubble Sort)和插入排序(Insertion Sort)。排序算法在数据处理中极为重要,用于将一组数据按照特定顺序排列。 2. **搜索算法**...
9. **排序算法**:学习各种排序算法,如冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序等,了解它们的优缺点和适用场景。 10. **图算法**:研究图的遍历(如深度优先搜索和广度优先搜索)以及最短路径...
这些排序算法各有特点,例如快速排序平均时间复杂度为O(nlogn),归并排序适合大数据量,而冒泡排序则适用于小规模数据。 2. **查找算法**:如二分查找、线性查找、哈希查找。二分查找适用于有序数组,效率高;线性...
第一个任务是编写一个35选7的彩票程序,利用冒泡排序对随机生成的7个1-35之间的不重复数字进行排序,同时让用户输入7个数字进行比较,判断中奖数量。第二个任务涉及类和对象的实践,设计一个银行客户类并实现存取款...
1. **排序算法**:如快速排序、归并排序、冒泡排序、插入排序、选择排序、堆排序等。这些排序算法展示了不同的时间复杂度和空间复杂度,适用于不同规模的数据处理。 2. **查找算法**:如二分查找、线性查找、哈希...
编程题通常涉及算法设计、数据结构运用、逻辑思维能力等,如排序算法(冒泡、选择、快速、归并)、查找算法(线性、二分)、图形界面编程(Swing或JavaFX)、数据库操作(JDBC)等。这些答案可以作为参考,帮助初学...
1. 排序算法:包括冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序等,它们用于组织和整理数据,是所有程序员都应熟悉的基石。 2. 搜索算法:如线性搜索、二分搜索、深度优先搜索(DFS)和广度优先搜索...
- **数组与排序算法**:介绍一维数组、多维数组的概念,以及常用的排序算法(如冒泡排序、选择排序)。 - **面向对象编程基础**:涉及抽象、封装、继承、多态等核心概念。 ### 6. 进阶知识点 - **异常处理**:讲解...