这个算是牵扯到算法的内容,首先你得明白思想,然后琢磨一下,要注意的就是循环控制
比如:冒泡排序:
思想:相邻两个进行比较,符合条件的就换位置
思路:
1、遍历数组,但是因为数组内最后一个元素后边没有数,所以最后一个数不需要参与运算
代码实现:for(int i=0;i<arr.length-1;i++)
2因为是相邻两个数之间的比较,而且每一遍运算之后都会有一个最值跑到最后一位,也就是说,后边从arr.length-1-i到arr.length-1之间的元素是不需要进行比较的
代码实现:
for(j=0;j<arr.length-i-1;j++)
{
if(arr[j]>arr[j+1])//如果相邻两个数,前边一个比后边大,就进行换位操作
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
这样冒泡的核心代码就显而易见了,
这种东西最重要的是明白原理,然后再琢磨转换成相应的代码
|