两个操作数都为1,结果为1. 按位或(|) 两个操作数其中一个为1,结果就为1 按位异或(^) 两个操作数相同为0,不同为1 按位取反(~) 操作数为1,结果为0;操作数为0,结果为1 左移<< 左移运算符<<使指定值的所有位都左移规定的次数。 (右边空位补0) 1)它的通用格式如下所示: value << num num ...
1.插入排序算法 插入排序的基本思想是在遍历数组的过程中,假设在序号 i 之前的元素即 [0..i-1] 都已经排好序,本趟需要找到 i 对应的元素 x 的正确位置 k ,并且在寻找这个位置 k 的过程中逐个将比较过的元素往后移一位,为元素 x “腾位置”,最后将 k 对应的元素值赋为 x ,一般情况下,插入排序的时间...
int[] arr = {1 ,2 ,5 ,7 ,3 ,9 ,4 ,0 ,6 ,8}; // 冒泡排序 // 通过遍历依次确定最大值(最小值),次值,直到最小值(最大值),看所需要的顺序 // 从小到大排序 for (int i = 1 ; i <= arr.length ; i++) { for (int j = 0 ; j < arr.length-i ; j++) { if (arr[j...
进行冒泡排序: publicclass数组的排序 {publicstaticvoidmain(String[] args) {intdata[] =newint[]{2,1,9,0,5,3,7,6,8}; get(data);//外层控制排序的总次数for(inty = 0 ; y < data.length ; y++){//内层控制每次的排序控制for(intx = 0 ; x <data.length-1 ; x++) {if(data[x] >...
如果按照数据库自己排序,会按照中文的拼音进行排序(A-Z)有实验过。如果要实现楼主这样的功能。我建议,增加两个字段,分别是等级(level,最好是约定一个与A级B级对应的数字,如A级填1)、班级号(classno,班级 填,1,2,3代表1班2班3班),两个字段就可以确定一个班级。然后SQL语句为 select...
首先,迭代计算出0、1 和 2 元素的个数,然后按照0、1、2的排序,重写当前数组。 进阶解法:一次遍历,三指针一个遍历其余两个记录0和2的位置。 public static void sortColors(int[] nums) { int z = -1; int t = nums.length - 1; int i=0; while (i < t) { if (nums[i] == 1) { i++...
if(arr[i]==num){ // 如果存在重复数字 continue outer; } } arr[i] = num; } // 进行排序 Arrays.sort(arr); System.out.println(Arrays.toString(arr)); }}
* @desc 冒泡排序 */publicclassBubbleSort{privateint[]array;publicBubbleSort(int[]array){this.array=array;}/** * 从小到大 */publicvoidsort(){int length=array.length;if(length>0){for(int i=1;i<length;i++){for(int j=0;j<length-i;j++){if(array[j]>array[j+1]){int temp=array...
1. 冒泡排序: 思路:假设我们要对一个长度为10的数组进行排序,首先进行第一趟排序,第0个元素和第1个元素进行比较,然后第1个元素和第2个元素进行比较,然后第2个元素和第3个元素进行比较,以此类推,直到第8个元素和第9个元素进行比较,此时第一趟排序完毕,数组中最大值被排到第9个元素;第二趟排序,依旧从第0...
return num1 - num2;}else if(isnull(str1) && ! isnull(str2)){//数字排前面:o1是数字,o2不是数字 return -1;}else if(! isnull(str1) && isnull(str2)){//数字排前面:o1不是数字,o2是数字 return 1;}else{ return 0;} } } });System.out.println("排序后===>"+list...