当前位置: 首页 > news >正文

【Java笔试强训】Day7(WY22 Fibonacci数列、CM46 合法括号序列判断)

Fibonacci数列

链接:Fibonacci数列

题目:

Fibonacci数列是这样定义的:
F[0] = 0
F[1] = 1
for each i ≥ 2: F[i] = F[i-1] + F[i-2]
因此,Fibonacci数列就形如:0, 1, 1, 2, 3, 5, 8, 13, …,在Fibonacci数列中的数我们称为Fibonacci数。给你一个N,你想让其变为一个Fibonacci数,每一步你可以把当前数字X变为X-1或者X+1,现在给你一个数N求最少需要多少步可以变为Fibonacci数。

在这里插入图片描述

题目分析:

在这里插入图片描述

代码实现:

package Day7;

import java.util.Scanner;

public class Day7_1 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.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.println(min);
    }
}

合法括号序列判断

链接:合法括号序列判断

题目:

给定一个字符串A和其长度n,请返回一个bool值代表它是否为一个合法的括号串(只能由括号组成)
在这里插入图片描述

题目分析:

用栈结构实现,栈中存放左括号,当遇到右括号之后,检查栈中是否有左括号,如果有则出栈,如果没有,则说明不匹配

代码实现:

package Day7;

import java.util.Stack;

public class Day7_2 {
    public boolean chkParenthesis(String a,int b) {
        if (b % 2 != 0) {
            return false;
        }
        Stack<Character> stack=new Stack<>();
        for(char c:a.toCharArray()) {
            if (c == '('){
                stack.push(c);
            } else if (c == ')') {
                if (stack.isEmpty()) {
                    return false;
                } else if (stack.peek() == '(') {
                    stack.pop();
                }
            }else {
                return false;
            }
        }
        return stack.isEmpty();
    }
}

相关文章:

  • 软考网工历年简答题汇总(2016下半年~2023年上半年)
  • 在excel中如何打出上标、下标
  • 算法刷题-栈与队列
  • python赋值运算符,及查询表
  • 大数据笔记-关于Cassandra的删除问题
  • uboot - 驱动开发 - 驱动模型
  • 从瀑布模式到水母模式:ChatGPT如何赋能软件研发全流程
  • 【2023.10.25练习】数据库-函数1
  • Shader入门知识—光照
  • 革新技术,释放创意 :Luminar NeoforMac/win超强AI图像编辑器
  • Flink将数据写入MySQL(JDBC)
  • 0基础学习PyFlink——不可以用UDTAF装饰器装饰function的原因分析
  • 【C++的OpenCV】第十四课-OpenCV基础强化(二):访问单通道Mat中的值之at()、ptr()、iscontinuous()
  • C语言 每日一题 PTA 10.30 day8
  • Hive On Spark 概述、安装配置、计算引擎更换、应用、异常解决
  • 框架安全-CVE 复现SpringStrutsLaravelThinkPHP漏洞复现
  • 【Java系列】HashMap
  • rust重载比较运算符
  • 轻量级仿 Spring Boot=嵌入式 Tomcat+Spring MVC
  • kali搭建docker
  • 温州网站排名优化/简述网络营销的特点及功能
  • av做视频在线观看网站/浏览器2345网址导航下载安装
  • 营销网站建设苏州/推广普通话手抄报句子
  • 个人做地方网站/百度seo查询收录查询
  • 蒙山县网站建设/关键词优化的发展趋势
  • 简单的电影网站模板/百度浏览器官方下载