首页 > 编程语言 >java插入排序

java插入排序

时间:2022-10-27 10:04:26浏览次数:43  
标签:java temp double 插入排序 public 排序 void

如何才能插入排序描?如何才能插入排序描述
思路假定这个数组的序是排好的,然后从头往后,如果有数比当前外层元素的值大,则将这个数的位置往后挪,直到当前外层元素的值大于或等于它前面的位置为止.这具算法在排完前k个数之后,可以保证a[1k]是局部有序的,保证了插入过程的正确性.插入排序描述编辑一般来说,插入排序都采用inplace在数组上实现
java认证冒泡排序与插入排序是怎样的?
今天我回顾了一下原来的排序方法,现在分享如下:冒泡排序:两种实现方式:一个是直接实现:如下:
1int[] a ={23,12,3,45,25,46,75,15,12,52};
2 int temp = 0;
3 for(int i=0;ia[j+1])
9 temp = a[j];
10 a[j] = a[j+1];
11 a[j+1] = temp;
12 }
13 }
14 }
直接运行可以打印出结果,又一种实现方法是实现一个Comparable接口:代码如下:
1public void bubble(Comparable[] a)
3 Comparable t;//交换时的临时变量本文
java数组的插入排序
总感觉这个题目有问题。。。用n[0]做待排序元素
public void directSort(double n[]){
int i ,j;
for(i=2;i


n[0]=n[i];//存储待排序元素
for(j=i-1; j>0 && n[0]
n[j] = n[j-1];
n[j] = n[0];
}给你个正确插入排序的代码!你看看,你写的有点乱!
public void directSort(double n[])
int i,j;
for(i=1;i


{
double temp=n[i];
for(j=i;j>0&&n[j-1]>temp;j--)
{
n[j]=n[j-1];
}
n[j]=temp;
}
}//直接排序(从小到大)
public void directSort(double n[]){
int i ,j;
double temp;
for(i=2;i


temp=n[i];
if(n[i]


for(j=i-1; j>=0&& temp


n[j+1]=n[j];
}
n[j+1] =temp;
}
}
}我想说 数组排序方法很多 那个最简单就用哪个 何必要整明白这稀里糊涂的代码
Arrays.sort(数组);解决数组排序的问题java程序入口是main函数,
而main函数的参数必须是string[] args;
所以你要把函数名mian改成其他如sort,并新写一个main函数来调用他。
public static void main(string[] args){
}什么狗蛋书,完全不知道在搞什么.
要排序直接用API里的Arrays工具类就好.要学原理那都是数学的问题.代码讲究不要重复发明轮子.
排序这种大众功能肯定已经有高手写好了效率非常高的.完全没有必要再去写它让你自己补全。。。
java数组的插入排序
总感觉这个题目有问题。。。用n[0]做待排序元素
public void directSort(double n[]){
int i ,j;
for(i=2;i


n[0]=n[i];//存储待排序元素
for(j=i-1; j>0 && n[0]
n[j] = n[j-1];
n[j] = n[0];
}给你个正确插入排序的代码!你看看,你写的有点乱!
public void directSort(double n[])
int i,j;
for(i=1;i


{
double temp=n[i];
for(j=i;j>0&&n[j-1]>temp;j--)
{
n[j]=n[j-1];
}
n[j]=temp;
}
}//直接排序(从小到大)
public void directSort(double n[]){
int i ,j;
double temp;
for(i=2;i


temp=n[i];
if(n[i]


for(j=i-1; j>=0&& temp


n[j+1]=n[j];
}
n[j+1] =temp;
}
}
}我想说 数组排序方法很多 那个最简单就用哪个 何必要整明白这稀里糊涂的代码
Arrays.sort(数组);解决数组排序的问题java程序入口是main函数,
而main函数的参数必须是string[] args;
所以你要把函数名mian改成其他如sort,并新写一个main函数来调用他。
public static void main(string[] args){
}什么狗蛋书,完全不知道在搞什么.
要排序直接用API里的Arrays工具类就好.要学原理那都是数学的问题.代码讲究不要重复发明轮子.
排序这种大众功能肯定已经有高手写好了效率非常高的.完全没有必要再去写它让你自己补全。。。

标签:java,temp,double,插入排序,public,排序,void
From: https://blog.51cto.com/yetaotao/5799922

相关文章

  • 1、Java程序概述
    1、什么是Java?Java是一个完整的平台,有一个庞大的库,其中包含了很多可重用的代码,以及一个提供诸如安全性、跨操作系统的可移植性以及自动垃圾收集等服务的执行环境。2、Ja......
  • java开发环境(java开发环境和运行环境)
    用JAVA开发手机游戏需要如何构建开发环境?  使用NetBeans进行J2ME开发1。首先安装jdk-6-windows-i586。exe软件,路径假设为D:\java\jdk1。6。0。安装过程系统会自动再安装......
  • java开源商城(java开源商城 saas)
    java有没有开源的网上商城系统,就好比php的ecshop在当今经济危机的大环境下,网上购物越来越来吃香,网上开店成本低,快捷方便,出名的电子商务网站有淘宝,拍拍,Ebay或是最新的百......
  • java循环(java循环输入)
    java中循环一共有几种?dowhilefordo{循环体}while(条件)先执行循环体,再判断条件,如果条件满足,继续执行,不满足,退出循环,最少执行一次while(条件){循环体}先判断条件,满足就......
  • java工具(c转java工具)
    我下了SDK,可不知道怎么用,它和java编辑工具有什么关系/哪?得先安装SDK,然后再设置环境变量,接着用记事本编辑,在Windows命令行进行编译和运行用可以了。也可以用Jbuilder之......
  • Java-获取当前时间并进行格式化
    获取年月日时分秒importjava.text.SimpleDateFormat;importjava.util.Date;Dated=newDate();SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-ddHH:m......
  • Java Annotation注解总结 ,注解有多个属性使用 @Check(min=0, max=100, value=55)
    JavaAnnotation注解总结注解有多个属性使用@Check(min=0,max=100,value=55)使用注解注解是放在Java源码的类、方法、字段、参数前的一种特殊“注释”。注解则......
  • 力扣182(java&python)-数组元素积的符号(简单)
    题目:已知函数 signFunc(x)将会根据x的正负返回特定值:如果x是正数,返回1。如果x是负数,返回-1。如果x是等于0,返回0。给你一个整数数组nums。令product......
  • javaBean
    实现简洁前端代码,封装成类jsp+htm+少量java代码————>java类————>数据库在jsp或者servlet调用java类实现功能 实现类定义成员变量然和getter、setter读写 D......
  • Java多线程(4):ThreadLocal
    您好,我是湘王,这是我的博客园,欢迎您来,欢迎您再来~ 为了提高CPU的利用率,工程师们创造了多线程。但是线程们说:要有光!(为了减少线程创建(T1启动)和销毁(T3切换)的时间),于是工程师们......