J2ME里排序算法探究

原创 2006年05月18日 17:06:00

         排序算法似乎是个老生常谈的问题,但是如果真让你在纸上写出来的话,恐怕总是错误不断。当然,我也一样。总觉得它似乎很简单,而不愿意去深究它。到用的时候总是错误百出。

       那么今天就彻底解决这个问题。

     下面是我刚写的一个算法,总的思想就是冒泡。

     在循环中让每个元素和剩余的元素做比较,然后让值比较小的冒到最上方。

     下面是具体程序:

import java.util.Random;

class ArraySequence
{
 public static void main(String[] args)
 {
        int[] arrayL = new int[100000];
       Random rd = new Random();
      for(int i = 0;i < arrayL.length;i++)
      {
             arrayL[i] = Math.abs(rd.nextInt());
      }
      ArraySequence se = new ArraySequence();
     long starttime = System.currentTimeMillis();
     se.Sequence(arrayL);
     long endtime = System.currentTimeMillis();
    System.out.println((endtime-starttime));
//  StringBuffer sb = new StringBuffer();
//  for(int i = 0;i < arrayL.length;i++)
//      sb.append(arrayL[i]+"*");
//      System.out.println(sb.toString());
//      System.out.println(Runtime.getRuntime().totalMemory());
 }
 
 public void Sequence(int[] arraylist)
 {
   int len = arraylist.length;
  for(int i=0;i < arraylist.length;i++)
  {
   for(int j=i+1;j < len;j++)
   {
    if(arraylist[j] < arraylist[i])
    {
     int temp = 0;
     temp = arraylist[j];
     arraylist[j] = arraylist[i];
     arraylist[i] = temp;
    }
   }
  }
 }
}

 

 

           这是个测试的程序,主要的算法在方法Sequence()中,可以直接调用这个方法把数组传递进去即可。

          在我的测试过程中,排序10000个元素大概用时500~550ms,也就是0.5S左右。

          排序100000个元素大概用时60000左右,也就是1分钟左右。

          速度方面还算可以吧。

          也暂时想不出来什么更好的优化算法。

         这个速度在J2ME游戏里应该是比较快了。

         希望大家多讨论,排序算法也是J2ME游戏里用的最多的一个算法。

 

 

      author:Sun Dongfeng

J2ME中文教程之J2ME技术概述

随着移动通信的突飞猛进,移动开发这个新鲜的字眼慢慢成为开发者关注的热点。在网上进行的最近一份调查显示,有24.34%的受访者涉足嵌入式/移动设备应用开发,这个数字可能略高于实际的比例,但也足可说明嵌入...
  • lpy123456
  • lpy123456
  • 2007年01月16日 12:37
  • 675

J2ME技术入门之一——J2ME程序的开发过程

       在进行J2ME开发以前,必须首先了解J2ME程序的开发过程,只有熟悉了开发过程以后才可以了解如何进行J2ME程序的开发。由于运行环境以及针对平台的不同,J2ME的开发过程和J2SE的开发...
  • Mailbomb
  • Mailbomb
  • 2005年06月23日 18:49
  • 2804

用Eclipse做J2Me开发的前期配置

 我也是一个初学者,从一个初学者的角度上讲,就是要尽可能的详细,因为这个东西稍微配置不对,或者是那里没有注意到,就会走不少的弯路,所以我在这里把配置讲得非常的详细,以图文的形式展示,以免你看了不知道所...
  • fenglibing
  • fenglibing
  • 2007年09月05日 23:01
  • 10305

J2ME入门之HelloWorld

引言  前面几篇文章已经介绍了Eclipse及其工作环境的安装、配置过程,并完成各项相关准备工作。因此从本文开始将讲述如何使用前面配置好的Eclipse开发环境来创建J2ME项目,开始真正的J2ME开...
  • runner0592
  • runner0592
  • 2006年08月10日 23:35
  • 4108

Eclipse搭建J2ME开发环境

sun_java_wireless_toolkit-2_5_2-ml-windows.exe 下载地址:http://www.oracle.com/technetwork/java/download...
  • ituff
  • ituff
  • 2011年11月07日 21:48
  • 1864

最新版idea2017+kemulator搭建J2ME开发环境

要求32位电脑,没有的话装个虚拟机。实际中发现kemulator的调试功能只有在32位条件下才能运行...
  • songhaibei7305
  • songhaibei7305
  • 2017年06月26日 17:35
  • 483

J2ME及其移植

J2me及其移植   1. 简介 1.1 系统结构 Java ME 以往称作J2ME(Java Platform,Micro Edition),是为机顶盒、...
  • ydhua1988
  • ydhua1988
  • 2015年01月22日 09:22
  • 1221

eclipse中配置j2me,简单运行j2me程序

1.安装好jdk2.去官网上下载好eclipse,去eclipseme.org上下载eclipseme,http://www.oracle.com/technetwork/java/download-...
  • snrqtdhuqf
  • snrqtdhuqf
  • 2011年01月20日 10:09
  • 2388

Eclipse上搭建Nokia手机的J2ME开发环境

-->安装Nokia Development Suite 2.2 最新版本的Nokia开发包为2.2版本,支持J2ME2.0(包括1.0)。下载地址:http://www.forum.nokia.c...
  • herrapfel
  • herrapfel
  • 2005年06月24日 16:58
  • 1800

【代码】如何快速将J2me游戏移植到Android上

前言 小白:“老大,你让做的三个J2me游戏搞定了,请看DEMO。” 老大:“恩,不错,小白,你知道Android这个平台吧?” 小白:“恩,听过。听说和J2ME有很多共同点。” 老大:“(一阵奸...
  • u011884154
  • u011884154
  • 2013年09月11日 12:13
  • 1278
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:J2ME里排序算法探究
举报原因:
原因补充:

(最多只允许输入30个字)