排序面试题

 

 

 

	static int[] sort(int[] arr){
		int r = arr.length -1;
		for(int i=0; i<r; i++){
			if(arr[i] > 0){
				for(int j=r; j>i; j--){
					if(arr[j] < 0){
						int tmp = arr[j];
						arr[j] = arr[i];
						arr[i] = tmp;
						r = j-1;
						break;
					}
				}
			}
		
		}
		return arr;
	}

 容易出错的地方:

1.  内部的for循环忘记break

2.  外层for循环边界可以是 r

 

请叫我头头哥

 

posted @ 2016-07-08 14:35  搜索技术  阅读(202)  评论(0编辑  收藏  举报