AJPFX关于java数组排序

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

/**
*将数组中的两个指定下标的元素交换位置
*@param arr 要交换元素的数组引用地址值
*@param a 数组索引
*@param b 数组索引
*/
private static void swap(int[] arr,int a,int b){
int temp=arr[a];
arr[a]=arr[b];
arr[b]=temp;
}

     /**
     *冒泡排序
     *@param arr 将要排序的数组引用地址值
     *@param type true表示顺序排序,false表示逆序排序
     */
     public static void bubbleSort(int[] arr, boolean type){                
             if(type){
                      for(int i=0;i<arr.length-1;i++){
                            for(int j=0;j<arr.length-1-i;j++){
                                            if(arr[j]>arr[j+1]){
                                                    swap(arr,j,j+1);
                                            }
                            }
                    }
             }else{
                            for(int i=0;i<arr.length-1;i++){
                                    for(int j=0;j<arr.length-1-i;j++){
                                            if(arr[j]<arr[j+1]){
                                                    swap(arr,j,j+1);
                                            }
                                    }
                            }
             }
     }

      /**
     *选择排序
     *@param arr 将要排序的数组引用地址值
     *@param type true表示顺序排序,false表示逆序排序
     */
     public static void selectSort(int[] arr,boolean type){
             if(type){
                     for(int i=0;i<arr.length-1;i++){
                             for(int j=i;j<arr.length;j++){
                                     if(arr[i]>arr[j]){
                                             swap(arr,i,j);
                                     }
                             }
                     }
             }else{
                     for(int i=0;i<arr.length-1;i++){
                             for(int j=i;j<arr.length;j++){
                                     if(arr[i]<arr[j]){
                                             swap(arr,i,j);
                                     }
                             }
                     }
             }
     }        

     /**
     *快速排序
     *@param arr 将要排序的数组引用地址值
     *@param l 数组索引的初始位置
     *@param r 数组的长度-1
     *@param type true表示顺序排序,false表示逆序排序
     */
     public static void  quicklySort(int[] arr,int l,int r,boolean type){
                     if(l<r){
                            int i=l,j=r,x=arr[i];
                            if(type){
                                     while(i<j){
                                            while(i<j&&arr[j]>x)
                                                    j--;
                                            if(i<j)
                                                    arr[i++]=arr[j];
                                            while(i<j&&arr[i]<x)
                                                    i++;
                                            if(i<j)
                                                    arr[j--]=arr[i];
                                    }
                            }else{
                                     while(i<j){
                                            while(i<j&&arr[j]<x)
                                                    j--;
                                            if(i<j)
                                                    arr[i++]=arr[j];
                                            while(i<j&&arr[i]>x)
                                                    i++;
                                            if(i<j)
                                                    arr[j--]=arr[i];
                                    }
                            }
                            arr[i]=x;
                            quicklySort(arr,l,r-1,type);
                            quicklySort(arr,l+1,r,type);
                    }
    }
AJPFX学习笔记JavaAPI之String类 学习笔记JavaAPI之String类 [size=10.5000pt]一、所属包java.lang.String,没有子类。特点:一旦被初始化就不可以被改变。 创建类对象的两种方式: String s1 = “abc”; String s1 = new String(“abc”); 内存存在方式: String Str = “jack”这个语句会先检查字符串常量池是否存放这个”jack1”这个字... 阅读详情

相关推荐

AJPFX:外汇的杠杆保证金是什么

外汇杠杆和保证金两者有着密切的关系。杠杆越大,交易时所用的保证金就越少。 杠杆即为保证金可以缩小的倍数。例如在没有杠杆的情况下,做一手即10万的欧元兑美元货币对合约(现在价格是1.05821),您所需要的资金为105,821美元来完成这笔交易。若您是看多,欧元兑美元报价实际也从1.05821涨到了1.05830时,您的利润就是差价9美金。 如果加入1:200的杠杆呢? 如果杠杆比例是1:200,您...

AJPFX的博客 839

AJPFX:外汇的爆仓和追加保证金

在外汇交易中,当可用保证金变成0时,账户即会爆仓。而为了防止爆仓,您可以在可用保证金不足时追加保证金以防止爆仓。 例如,您在AJPFX的账户是100倍的杠杆,一手欧美货币对合约为10万美金(1 LOT EURUSD),爆仓比例为50%(资金净值和已用保证金比值达到或低于50%时即会爆仓)。客户资金为1000美金,那么交易一手欧美货币对,保证金需要占用1000美金,剩余的可用保证金即为0美金,假设客...

AJPFX的博客 638

AJPFX关于VIM的常用快捷键

Ajax技术的核心是XMLHttpRequest对象(简称XHR), var xhr = new XMLHttpRequest(); function createXHR(){ if (typeof XMLHttpRequest != “undefined”){ return new XMLHttpRequest(); } else if (typeof ActiveXObject != “und...

AJPFX的博客 304

AJPFX平台:01.14日内交易策略

AJPFX分析恒指: 恒指从周线上看,恒指经过近五周的短线下行后收取启明之星形态,上周恒指收取光头光脚大阳线,后市有望打破宽幅整理区间,大趋势上看多头占优,低位支撑看26230、26000两个关键位置的情况,目前恒指价格运行在保利加通道的中轨附近,若继续上破,中线阻力位为28600附近。 日线级别来看,短线阻力为26800附近,短线来看有回落的需求,保利加通道缩口运行,目前MA5和MA10两线呈交...

AJPFX的博客 315

关于java的arrays数组排序示例AJPFX的分享

Java API对Arrays类的说明是:此类包含用来操作数组(比如排序和搜索)的各种方法。 1.对基本数据类型的数组排序 说明: (1)Arrays类中的sort()使用的是“经过调优的快速排序法”; (2)比如int[],double[],char[]等基数据类型的数组,Arrays类之只是提供了默认的升序排列,没有提供相应的降序排列方法。 (3)要对基础类型的数组进行降序排序,需要将这些数...

AJPFX的博客 144

AJPFX关于Java中运用数组的四种排序方法

JAVA中在运用数组进行排序功能时,一般有四种方法:快速排序法、冒泡法、选择排序法、插入排序法。 快速排序法主要是运用了Arrays中的一个方法Arrays.sort()实现。 冒泡法是运用遍历数组进行比较,通过不断的比较将最小值或者最大值一个一个的遍历出来。 选择排序法是将数组的第一个数据作为最大或者最小的值,然后通过比较循环,输出有序的数组。 插入排序是选择一个数组中的数据,通过不断的插入比较...

AJPFX的博客 205

AJPFX:学习JAVA程序员两个必会的冒泡和选择排序

数组排序(冒泡排序) 冒泡排序: 相邻元素两两比较,大的往后放,第一次完毕,最大值出现在了最大索引处 选择排序 : 从0索引开始,依次和后面元素比较,小的往前放,第一次完毕,最小值出现在了最小索引处 [1,3,9,5,7] --> 排序 --> [1,3,5,7,9] */ public class ArraysDemo { public static vo...

AJPFX的博客 236

AJPFX分享java排序之希尔排序

(1)基本思想:算法先将要排序的一组数按某个增量d(n/2,n为要排序数的个数)分成若干组,每组中记录的下标相差d.对每组中全部元素进行直接插入排序,然后再用一个较小的增量(d/2)对它进行分组,在每组中再进行直接插入排序。当增量减到1时,进行直接插入排序后,排序完成。 (2)用java实现 public class shellSort { public shellSort(){ int a[]...

AJPFX的博客 195

来自AJPFX的二分法查找

package com.heima.array; public class Demo2_Array { /** * * A:案例演示 * 数组高级二分查找代码 * B:注意事项 * 如果数组无序,就不能使用二分查找。 * ...

AJPFX的博客 150

AJPFX总结Collection集合(上)

出现集合类的原因 面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,就对对象进行存储,集合就是存储对象最常用的一个方式. 数组和集合都是容器有何不同? 数组虽也可存储对象,但长度是固定的,集合长度是可变的,数组中可以存储基本数据类型,集合只能存储对象. 特点:集合只用于存储对象,集合长度是可变的,集合可以存储不同类型的对象. Collection **** |–List:元素...

AJPFX的博客 184

AJPFX关于collection总结

Collection接口是该层次结构的根接口,该接口的所有子接口或实现子类集合都可以用Iterator迭代器进行取出。Collection有两个常见子接口,即为List和Set,其中List集合可以用ListIterator迭代器取出。List接口的主要实现子类有ArrayList和LinkedList等,Set接口的主要实现子类有HashSet和TreeSet等。Collection层次结构图如...

AJPFX的博客 221

AJPFX总结java开发常用类(包装,数字处理集合等)(二)

二:进军集合类 集合其实就是存放对象的容器,专业点说就是集合是用来存储和管理其他对象的对象,即对象的容器。集合可以扩容,长度可变,可以存储多种类型的数据,而数组长度不可变,只能存储单一类型的元素 用一张图来总结一下集合的总况: 下面是网上找的一个图片: 集合中的结构和几个实现类: 总述:List、Set、Map是这个集合体系中最主要的三个接口。 其中List和Set继承自Collection接口。...

AJPFX的博客 198

AJPFX关于学习java遇到的问题:对算法和数据结构不熟悉

为什么我先拿“数据结构和算法”说事捏?这玩意是写程序最最基本的东东。不管你使用 Java 还是其它的什么语言,都离不开它。而且这玩意是跨语言的,学好之后不管在哪门语言中都能用得上。   既然“数据结构和算法”这么重要,为什么很多 Java 新手却很不熟悉捏?我琢磨了一下,估计有两种可能。有些人虽然是计算机系毕业的,但是当初压根没好好学过这门课程,到工作时早都还给老师了;还有一些人是中途转行干编程,...

weixin_33862188的博客 94

JAVA集合类特点,Java集合常用类特点整理

集合的结构如下图所示:集合的两个顶级接口分别为:Collection和MapCollection下有两个比较常用的接口分别是List(列表)和Set(集),其中List可以存储重复元素,元素是有序的(存取顺序一致),可以通过List脚标来获取指定元素;而Set不可以有重复元素,元素是无序的。List接口中,比较常用的类有三个:ArrayList、Vactor、LinkedList。ArrayLis...

weixin_42277672的博客 440

AJPFX:01.07日内交易策略

AJPFX分析恒指: (1月7日)恒生指数,恒指上周走势整体趋势呈震荡上行趋势,目前来看四小时MA5收线在下方25520附近形成短期支撑位,短线来看小时线会有小幅震荡行情,日线KDJ依旧是多头趋势占据主导,大趋势依旧看多为主,日内上方需关注26000附近压制位,下方需关注25500附近支撑位,日内操作思路回踩做多为主。 AJPFX分析外汇(黄金,原油): 美指在周五晚间非农数据非常靓丽的影响下出现...

AJPFX的博客 299

AJPFX的反射学习笔记

反射是描述 数据结构的结构 属性、方法(数据)元数据 类(数据结构)描述数据的结构–>类也是特殊的对象---->元数据 CLASS类 描述数据结构的结构 在JAVA里面用Class 类 描述类的类 ----> Method 类 描述类中的方法 ----> 反射得到描述数据额结构的数据的一种行为 Class类中有{ getPack...

AJPFX的博客 244
上一篇: AJPFX关于异常和file类的总结
下一篇: AJPFX区分this和super
AJPFX
博客等级 码龄7年 4粉丝 183原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值