一、三种排序
冒泡排序 选择排序 二分查找
1.冒泡排序
public static void main(String[] args){
int [] data = {11,66,44,55,33};
for(int i = 1;i < data.length;i++){
for(int j = 0;j < data.length - i;j++){
int t = data[j];
data[j] = data[j+1];
data[j+1] = t;
}
}
}
for(int datum : data){
System.out.print(datum + " ");
}
System.out.println();
}
2.选择排序
public static void main(String[] args){
int [] data = {22,33,55,99,66};
for(int x = 0;x < data.length;x++){
int min = x;
for(int i = 1;i < data.length;i++){
if(data[i] < data[min]){
min = i;
}
}
if(min != x){
int t = data[min];
data[min] = data[x];
data[x] = t;
}
}
for(int datum : data){
System.out.print(datum + " ");
}
System.out.println();
}
3.二分查找
public static void main(String[] args) {
int [] data = {11,22,33,44,55,66,77,88,99};
System.out.println(binarySearch(data,11));
System.out.println(binarySearch(data,99));
System.out.println(binarySearch(data,50));
}
public static int binarySearch(int [] array, int key){
int begin = 0;
int end = array.length - 1;
int mid = (begin + end) / 2;
while(begin <= end){
if(key == array[mid]){
return mid;
}else if(key > array[mid]){
begin = mid + 1;
mid = (begin + mid) / 2;
}else{
end = mid - 1;
mid = (begin + end) / 2;
}
}
return -1;
}
二、Redis
1.主从辅助读写分离
通过持久化Redis保证了即使数据库重启数据也不会丢失,但如果这台服务器出现故障,数据也会丢失,只有将同一种数据分别放在不同的服务器上,即使一个服务器故障了,其他服务器也会保有数据,Redis提供了复制,可以使其他服务器同步数据,我们可以设置多个Redis服务器,并且设定好他们的关系,主负责写入数据,其他的负责保存好数据,这就叫主从复制
2.高可用哨兵
3.Jedis操作Redis
下载Jedis
下载Commons-Pool