目录
1 对10万个数字的数组进行快速排序的方法,写出来
答案:
用快排,不要用冒泡,快排10万数据大概用1s,冒泡需要29s;
public void quirtSort(int arr[],int low,int high){
int l=low;
int h=high;
int jz=arr[low];
for(int mm1:arr){
System.out.println("rensheng "+mm1);
}
while(l
while(l=jz){
h--;
}
if(l
arr[l]=arr[h];
arr[h]=-10000;
l++;
for(int mm:arr){
System.out.print(mm+"#######");
}
System.out.println("");
}
while(l
l++;
}
if(l
arr[h]=arr[l];
arr[l]=-1111;
for(int mm:arr){
System.out.print(mm+"%%%%%%%");
}
System.out.println("");
h--;
}
}
arr[l]=jz;
if(l-1>low){
quirtSort(arr,low,l-1);
}
if(h+1
quirtSort(arr,h+1,high);
}
System.out.println("dijici");
for(int mm:arr){
System.out.print(mm+"-----");
}
}
快排的思想,是选择一个数作为基准,一般是选择数组的第一个数字。然后先从右向左遍历,遇到小于基准的,把值换到左边,
然后再从左边开始遍历,遇到大于基准的数字,将值换到右边,然后继续从右向左遍历。
一直循环,一直到左下标等于右下标的时候,一轮结束。
递归,采用分而治之的思想,继续重复,我理解了2天才搞明白,不明白可以私信
2 数据库事务的隔离级别
下面这篇文字解释的很透彻,此处不再赘述
3 什么是脏读 幻读 不可重复读
4 spring 事务的传播特性
答:
序号
事务传播行为类型
当前没有事务
当前有事务
1
PROPAGATION_REQUIRED
新建事务
加入到这个事务中
2
PROPAGATION_REQUIRES_NEW
新建事务
把当前事务挂起 新建事务
3
PROPAGATION_SUPPORTS
以非事务方式执行。
加入到这个事务中
4
PROPAGATION_NOT_SUPPORTED
以非事务方式执行操作,
把当前事务挂起 ,自己不用事务
5
PROPAGATION_MANDATORY
就抛出异常。
加入到这个事务中
6
PROPAGATION_NEVER
以非事务方式执行,
抛出异常。
7
PROPAGATION_NESTED
新建事务
如果当前存在事务,则在嵌套事务内执行。
PROPAGATION_NESTED和PROPAGATION_REQUIRED 容易混淆,
也就是说, 最容易弄混淆的其实是 PROPAGATION_REQUIRES_NEW 和 PROPAGATION_NESTED, 那么这两种方式又有何区别呢? 我简单的翻译一下 Juergen Hoeller 的话 :
PROPAGATION_REQUIRES_NEW 启动一个新的, 不依赖于环境的 "内部" 事务. 这个事务将被完全 commited 或 rolled back 而不依赖于外部事务, 它拥有自己的隔离范围, 自己的锁, 等等. 当内部事务开始执行时, 外部事务将被挂起, 内务事务结束时, 外部事务将继续执行.
另一方面, PROPAGATION_NESTED 开始一个 "嵌套的" 事务, 它是已经存在事务的一个真正的子事务. 潜套事务开始执行时, 它将取得一个 savepoint. 如果这个嵌套事务失败, 我们将回滚到此 savepoint. 潜套事务是外部事务的一部分, 只有外部事务结束后它才会被提交.
由此可见, PROPAGATION_REQUIRES_NEW 和 PROPAGATION_NESTED 的最大区别在于, PROPAGATION_REQUIRES_NEW 完全是一个新的事务, 而 PROPAGATION_NESTED 则是外部事务的子事务, 如果外部事务 commit, 潜套事务也会被 commit, 这个规则同样适用于 roll back.
5 springcloud服务治理,如何进行
6 分布式事务如何解决
7 集合相关。 HashMap如何实现快速排序
LinkedList可以排序吗?
常用的Collections下的方法有哪些,举几个例子
8 谈谈对volilate关键字的理解
9 单例模式详解
10 谈谈java的悲观锁 ,乐观锁,和双重锁
本文分享 优快云 - wangyonglin1123。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。
本文详细介绍了快速排序算法的实现方法及应用案例,并对比了冒泡排序的效率。此外,还深入探讨了Spring框架中事务传播特性的原理及其不同类型的使用场景。
1145

被折叠的 条评论
为什么被折叠?



