
🎉🎉🎉点进来你就是我的人了
博主主页:🙈🙈🙈戳一戳,欢迎大佬指点!欢迎志同道合的朋友一起加油喔🤺🤺🤺
目录
一、选择题
二、编程题
🔥Fibonacci数列
🔥合法括号序列判断
一、选择题
1、JAVA属于( )
 A 操作系统
 B 办公软件
 C 数据库系统
 D 计算机语言
正确答案: D
 参考答案:
 计算机软件主要分为系统软件与应用软件两大类。系统软件主要包括操作系统、语言处理系统、数据库管理系统和系统辅助处理程序。应用软件主要包括办公软件和多媒体处理软件。Java是一门面向对象编程语言,属于计算机语言。故正确答案为D选项。
2、类声明中,声明抽象类的关键字是 ( )
 A public
 B abstract
 C final
 D class
正确答案: B
3、在使用 interface 声明一个接口时,只可以使用()修饰符修饰该接口
 A private
 B protected
 C private protected
 D public
正确答案: D
4、Math.round(11.5) 等于:()
 A 11
 B 11.5
 C 12
 D 12.5
正确答案: C
 round函数表示四舍五入。
5、以下对继承的描述错误的是()
 A Java中的继承允许一个子类继承多个父类
 B 父类更具有通用性,子类更具体
 C Java中的继承存在着传递性
 D 当实例化子类时会递归调用父类中的构造方法
正确答案: A
6、在 java 中 , 一个类()
 A 可以继承多个类
 B 可以实现多个接口
 C 在一个程序中只能有一个子类
 D 只能实现一个接口
正确答案: B
7、关于以下程序代码的说明正确的
class HasStatic{
private static int x = 100;
public static void main(String args[ ]){
HasStatic hs1 = new HasStatic();
hs1.x++;
HasStatic hs2 = new HasStatic();
hs2.x++;
hs1=new HasStatic();
hs1.x++;
HasStatic.x--;
System.out.println( "x=" +x);
}
}
A 5行不能通过编译,因为引用了私有静态变量
 B 10行不能通过编译,因为x是私有静态变量
 C 程序通过编译,输出结果为:x=103
 D 程序通过编译,输出结果为:x=102
正确答案: D
 参考答案:
 被static修饰的变量,只有一份
8、以下 _____ 不是 Object 类的方法
 A clone()
 B finalize()
 C toString()
 D hasNext()
正确答案: D
 D选项是iterator的方法
9、下面哪一项不是 java 类访问控制关键字
 A public
 B this
 C private
 D protected
正确答案: B
10、java 语言使用的字符码集是
 A ASCII
 B BCD
 C DCB
 D Unicode
正确答案: D
 参考答案:
 ASCII:特殊字符,大小写字母,数字;BCD是对数字;Unicode是对Java的
二、编程题
🔥Fibonacci数列
Fibonacci数列_牛客题霸_牛客网
 【解题思路】:
 本题可以通过先找到距离N最近的两个Fibonacci数,这两个数分别取自距离N的最近的左边一个数L和右边一个数R,然后通过min(N - L, R - N)找到最小步数。
import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner sc=new Scanner(System.in);
        int  n=sc.nextInt();
        int f1=0;
        int f2=1;
            while(f2<n){
              int f3=f1+f2 ;
                f1=f2;
                f2=f3;
                
            }
       int min=Math.min(n-f1,f2-n);
        System.out.print(min);
    }
}
🔥合法括号序列判断
    合法括号序列判断_牛客题霸_牛客网
 【解题思路】:
 用栈结构实现,栈中存放左括号,当遇到右括号之后,检查栈中是否有左括号,如果有则出栈,如果没有,则说明不匹配。
 1、存储遍历过的左括号
 2、最先遍历的左括号最后匹配,最后遍历到左括号最先匹配
 如何判断:
 1、如果字符串的长度不为偶数,直接返回false
 2、当长度为偶数,遍历字符串,遇到左括号入栈,遇到右括号,看栈顶元素是否为左括号,如果是左括号出栈,继续遍历。当字符串遍历结束,如果栈为空,那么字符串就是一个合法的括号,返回true
 3、如果遍历到非括号的字符,直接返回法false。
import java.util.*;
public class Parenthesis {
    public boolean chkParenthesis(String A, int n) {
        if(n%2!=0){
            return false;
        }
        Stack<Character> stack=new Stack<>();
        for(char x:A.toCharArray()){
            if(x=='('){
                stack.push(x);
            }else if(x==')'){
                if(stack.isEmpty()){
                    return false;
                }else if(stack.peek()=='('){
                    stack.pop();
                }
            }else{
                return false;
            }
        }
         return stack.isEmpty();
    }
}






![【群智能算法】一种改进的蜣螂优化算法IDBO[2]【Matlab代码#18】](https://img-blog.csdnimg.cn/be6bbacb0981451bb3f3eea12a48fec9.png)














