阴天 在开大灯的房间
目录
选择1
下面的说法正确的是
java中线程是非抢占式的
java中的线程是不可以共享数据的
每个java程序都至少有一个线程,即主线程
java中的线程不可以共享代码
java的多线程是基于抢占式的实现 java中的多线程可以使用共享内存区域:堆 方法区 java中的一段代码 要么是实例方法 或是静态方法 代码本身都是保存在方法区 属于线程共享区域
建立和关闭一个tcp 一共会产生的握手次数是
7
6
3
5
题目所说的是握手次数 指的是网络的通信次数 即是发送得网络数据包次数 建立三次握手 四次挥手 总共七次
在计算机网络当中 TCP协议和UDP协议的相似之处是
面向非连接的协议
面向连接的协议
其余的选项都不对
传输层协议
tcp和udp都是传输层协议,tcp是有连接的,udp是无连接的。
已知一个进程绑定的端口号,查询该进程的命令是
ps
find
netstat
show
已知进程的名称,查询的方式:ps -ef |grep 进程名 已知进程端口,查询的方式: netstat -anp|grep 进程名
以下的协议属于应用层的有
TCP
IP
ARP
FTP
tcp是传输层协议 ip是网络层协议 arp 是介于数据链路层到网络层的协议
02代码
Lee_921 : 使括号有效的最少添加
给定一个由 '(' 和 ')' 括号组成的字符串 S,我们需要添加最少的括号( '(' 或是 ')',可以在任何位置),以使得到的括号字符串有效。
从形式上讲,只有满足下面几点之一,括号字符串才是有效的:
它是一个空字符串,或者 它可以被写成 AB (A 与 B 连接), 其中 A 和 B 都是有效字符串,或者 它可以被写作 (A),其中 A 是有效字符串。 给定一个括号字符串,返回为使结果字符串有效而必须添加的最少括号数。
来源:力扣(LeetCode) 链接:力扣 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
public int minAddToMakeValid(String s) {
if (s.length() == 0 || s == null) return 0;
int count = 0;
int res = 0;
for (int i = 0; i < s.length(); i++) {
if (s.charAt(i) == '('){
count++;
}else {
count--;
}
if (count < 0 ){
res++;
count = 0;
}
}
return res+=count;
}
Lee_1492:n的第k个因子
//使用栈进行暴力解决;
class Solution {
public int kthFactor(int n, int k) {
Stack<Integer> stack = new Stack<>();
for (int i = 1; i <= n ; i++) {
if (n %i == 0){
stack.push(i);
}
}
if (stack.size() < k) {
return -1;
}
int len = stack.size();
for (int i = 0; i < len-k ; i++) {
stack.pop();
}
return stack.peek();
}
}
//优化
public class Test1 {
public int KthFac(int n ,int k){
int count = 0 ,i;
for (i = 1; i*i<=n ; i++) {
if (n % i == 0){
count++;
if (count == k){
return i;
}// 要是k的值在 之前就进行过
}
}
i--;
if (i*i == n){
i--;
}
for (; i >0 ; i--) {
if (n% i == 0 ){
count++;
if (count == k){
return n/i;
}
}
}
return -1;
}
}