283.把数组中的0移到数组末尾 Move Zeroes

Given an array nums, write a function to move all 0's to the end of it while maintaining the relative order of the non-zero elements.

For example, given nums = [0, 1, 0, 3, 12], after calling your function, nums should be [1, 3, 12, 0, 0].

Note:

  1. You must do this in-place without making a copy of the array.
  2. Minimize the total number of operations.

  1. public void MoveZeroes(int[] nums) {
  2. int length = nums.Length;
  3. for (int i = 0; i < length; i++) {
  4. for (int j = i; j < length; j++) {
  5. if (nums[i] == 0) {//如果等于0,则跟后面的元素交换
  6. int temp = nums[i];
  7. nums[i] = nums[j];
  8. nums[j] = temp;
  9. }
  10. }
  11. }
  12. }






posted @ 2017-01-10 23:01  xiejunzhao  阅读(289)  评论(0编辑  收藏  举报