面试之冒泡排序代码实现

public class Sort {
    public static void sort() {
        Scanner input = new Scanner(System.in);
        int sort[] = new int[10];
        int temp;
        System.out.println("请输入10个排序的数据:");
        for (int i = 0; i < sort.length; i++) {
            sort[i] = input.nextInt();
        }
        for (int i = 0; i < sort.length - 1; i++) {
            for (int j = 0; j < sort.length - i - 1; j++)             {
                if (sort[j] < sort[j + 1]) {
                    temp = sort[j];
                    sort[j] = sort[j + 1];
                    sort[j + 1] = temp;
                }
            }
        }
        System.out.println("排列后的顺序为:");
        for(int i=0;i<sort.length;i++){
            System.out.print(sort[i]+"   ");
        }
    }
    public static void main(String[] args) {
        sort();
    }
}
时间: 2024-11-10 00:53:16

面试之冒泡排序代码实现的相关文章

java面试一些写代码的题目

给出一个字符串,把两个以上的_替换成一个,如"Hello__world____are__you_ok?",处理后应为"Hello_world_are_you_ok?",示例代码如下: 利用正则表达式,一句话搞定版: public static void main(String args[]){         String str="Hello__world____are__you_ok?";         System.out.println

&lt;17&gt;【掌握】冒泡排序代码实现+【掌握】选择排序代码实现

#include <stdio.h> void maoPao(int arr[],int len){ int temp; //双重循环 for(int i=0;i<len-1;i++){ //因为i的值每变化一次,跑了一趟,按照冒泡的思想 //有一个数已经下沉了 //没有必要和已经有序的数据进行比较了 //j<len-1-i;所以 j<len-1也可以,但是多跑会 for (int j=0; j<len-1-i; j++) { if (arr[j]>arr[j+1

js面试-手写代码实现new操作符的功能

我们要搞清楚new操作符到底做了一些什么事情? 1.创建一个新的对象 2.将构造函数的作用域赋给新对象(因此this指向了这个新对象) 3.执行构造函数中的代码(为这个新对象添加属性) 4.返回新对象 上面给出了new操作符到底做了一些什么事情,我们就一步一步的实现这些,是不是就实现了new操作符的功能. 首先定义一个构造函数Person如下: function Person(name) { this.name = name; } Person.prototype.sayName = funct

JAVA 冒泡排序代码

int[] a = {2,5,3,6,3,2,4,4,8,9,3,2}; for(int z: a) { for(int i=0;i<a.length-1;i++) { if(a[i]<a[i+1]) { int A=a[i]; a[i]=a[i+1]; a[i+1]=A; } } } for(int b:a) { System.out.println(b); }

PHP_冒泡排序代码解析

<?php /** * 基本思想:将数组中的每一个下标元素遍历出来 *依次将这些下标的值对后面一个下标的值对比 *如果大于后面一位下标的值,将两者调换位置 */ $arr = array (55,31,4,5,54,61,2); $arr_length = count($arr); for($j=0;$j<$arr_length-1;$j++){ for($i=0;$i<$arr_length-$j-1;$i++){ //拿数组中一个下标与后面一位对比 if($arr[$i]>$a

面试常用的代码片段

package com.transaction.demo.jdbc; import java.sql.*; import java.util.ArrayList; // JDBC class JDBC { /*public static void main(String[] args) throws SQLException { Connection connection = DriverManager.getConnection("jdbc:mysql://192.168.65.142:330

冒泡排序实现代码

实现了冒泡排序和优化版的冒泡排序代码,具体原理可以自行google一下. #include<iostream> #define N 10 using namespace std; void bubblesort(int arr[],int n) { for(int i = 0;i< n;i ++) for(int j = 0;j < n-i;j++) if(arr[j] > arr[j+1]) { int tmp = arr[j]; arr[j] = arr[j+1]; ar

冒泡排序详解

冒泡排序可以说是排序中一个十分重要的内容,很多时候都会遇到,比如面试,考试等.下面就来写一写冒泡排序,也可以加深一下自己的理解. 冒泡排序原理,依次比较相邻的两个元素,把较大的元素移至后端:每趟排序找出较大的值放在后端. 给定一个数组,例如[2,8,4,6,1]; 第一趟排序:将8移至后端 第一次排序:[2,8,4,6,1]; //比较2和8,位置不变 第二次排序:[2,4,8,6,1]; //比较8和4,将8移至4的后面 第三次排序:[2,4,6,8,1]; //比较8和6,将8移至6的后面

链表版冒泡排序

基本原理就是尾插法建立链表(当然,也可以用头插法建立链表),重点是冒泡排序法中的两层for循环的参数设置,设置两个链表指针p.q: 第一个用来指向头结点后一个(p = head ->next)(p还有个作用就是排序的步骤数),第二个用来指向头结点后一个的后一个(q = p -> next),每次内层循环q指针往后移一个结点,然后和第一个节点存储的数据相比较,完成交换,直到第一次排序完毕为止,整个过程中,p指针一直指向的是第一个数.第二次,p就指向后一个节点,q指向p所指向的节点的后一个节点,然