请教大神java中排序的问题

网上找排序的资料,有的说第一个是冒泡,有的说第二个,个人感觉第二个,但是不确定,求大神教我,
public static void mySort1(int[] data){
for (int i = 0; i < data.length; i++) {
for (int j = i; j < data.length; j++) {
if(data[i] < data[j]) {
int tmp = data[i];
data[i] = data[j];
data[j] = tmp;
}
}
}
}
public static void mySort2(int[] data){
for (int i = 0; i < data.length-1; i++) {
for (int j = 0; j < data.length-i-1; j++) {
if(data[j] < data[j+1]) {
int tmp = data[j];
data[j] = data[j+1];
data[j+1] = tmp;
}
}
}
}

第二种是冒泡,比较是相邻的两个元素。

你还要加个标志位才行啊