每天一道编程题(四)--------冒泡排序
来源:互联网 发布:淘宝怎么投诉假货 编辑:程序博客网 时间:2024/06/01 08:53
在写冒泡的时候遇到了一个问题,就是值传递问题,我写的是swap函数,本来只传两个数值是不可以的例如swap(int a,int b)这样只是单纯的值传递,并不能起到交换两个数值的作用,所以要直接对数组进行操作才是王道。想起C++中其实是按指针给值,直接修改堆里的值,而java里没有指针,所以要将“引用”传进来,我不知道用引用合不合适,但是这个引用和C++中的引用是有很大区别的,我觉得反而有点类似于指针。
public class BubbleSort {public static void swap(int[] args,int index1,int index2) {int temp = 0 ;temp= args[index1];args[index1] = args[index2];args[index2] = temp;} public static void bubblesort(int[] num){ for(int i=0;i<num.length;i++){ for(int j=0;j<num.length-i-1;j++){ if(num[j]>num[j+1]){swap(num,j,j+1); } } } }public static void main(String[] args){int[] num={1,2,6,8,4,3}; bubblesort(num); for(int a:num){ System.out.println(a); }//int[] a={1,2};// swap(a,0,1);// System.out.println("a:"+a[0]);// System.out.println("b:"+a[1]); }}
- 每天一道编程题(四)--------冒泡排序
- 每天一道编程题(三)------插入排序
- 每天一道编程题(五)-------------选择排序
- 每天一道编程题(六)-------希尔排序
- 每天一道编程题(七)------------------快速排序
- 每天一道编程题(九)----------堆排序
- 每天一道编程题(1)
- 每天一道编程题(2)
- 每天一道编程题(3)
- 每天一道编程题(八)--------百钱买百鸡
- C语言 每天做一道编程题
- 每天一道ACM(四)
- 每天一道算法题——数组重排序
- 每天一算法--冒泡排序
- 每天一种算法 - 冒泡排序
- 【每天一道算法题】
- 【每天一道Linux题】
- 【每天一道算法题】
- 分布式文件系统KFS源码阅读与分析(三):RPC实现机制(MetaServer端)
- 每天一道编程题(三)------插入排序
- DSP多线程
- 分布式文件系统KFS源码阅读与分析(四):RPC实现机制(KfsClient端)
- GBK,UTF-8,和ISO8859-1之间的编码与解码
- 每天一道编程题(四)--------冒泡排序
- PHP 5.3.10 编译安装时出现 undefined reference to `libiconv' 错误的解决方法
- 我的嵌入式学习笔记(1)-- 搭建开发环境 .
- 详解FlashBurn的hex文件烧写
- 安装VMware虚拟机和Linux操作系统
- COMMAND 模式
- 一些小感想
- Android学习笔记(6)————Android的线程与进程
- linux shell数据重定向(输入重定向与输出重定向)详细分析