我是写java的,这个排序主要是改变str数组结构,但是这str[]是个局部变量,你写的swap方法根本调用不到str,只是单纯的对数字进行排序,方法是执行了,但是str内部还是没有改变的
哦,知道了,谢谢。
这应该是选择排序吧
啊呀,确实
我是搞c/c++的,看到这个swap立马精神,c++语言版本swap:
void swap(int& a,int& b){
a=a^b;
b=a^b;
a=a^b;
}
哈哈
java中应该可以采用传个数组和两个下标的方式。希望传进去的数组不是备胎...
你传的值,当然无法更改数组地址内的成员的值
java也传不了地址,想其他办法吧
你把两个值交换没有任何意义,你要改变数组的结构,必须要把数组也传进去
当你调用swap方式时,两个数是采用的值传递,值传递只在方法内有效,对方法外的数据不做改变,相当于此时额外创建了一块内存为你传过去的两个值进行交换,但实质上原来的数并没有改变.java中的基本类型和String类型都采用值传递.