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

网站排名优化学习广州公司注册最新流程

网站排名优化学习,广州公司注册最新流程,wordpress菜单设置,金牛区建设审批网站目录 1.前言 2.正文 2.1Fib数列 2.2单词搜索 2.3杨辉三角 3.小结 1.前言 哈喽大家好吖,今天来分享几道的练习题,欢迎大家在评论区多多交流,废话不多说让我们直接开始吧。 2.正文 2.1Fib数列 题目:斐波那契数列_牛客题霸…


目录

1.前言

2.正文

2.1Fib数列

2.2单词搜索

2.3杨辉三角

3.小结


1.前言

哈喽大家好吖,今天来分享几道的练习题,欢迎大家在评论区多多交流,废话不多说让我们直接开始吧。

2.正文

2.1Fib数列

题目:斐波那契数列_牛客题霸_牛客网


解法1:

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);int num = in.nextInt();int[] dp = new int[num + 1];dp[1] = 1;dp[2] = 1;for (int i = 3; i <= num; i++) {dp[i] = dp[i - 1] + dp[i - 2];}System.out.println(dp[num]);}
}
  • 时间复杂度:O(n),仅需一次遍历。

  • 空间复杂度:O(n),使用数组存储中间结果。

  • 优化空间:若只需最终结果,可用两个变量替代数组,将空间复杂度降至O(1)。

  • 注意事项:当num较大时,int可能溢出,可改用longBigInteger


解法2:

    public static void main(String[] args) {Scanner in = new Scanner(System.in);int num = in.nextInt();int first = 1;int second = 1;int temp;for (int i = 3; i <= num; i++) {temp = second;//先把变量second保存起来second = first + second;first = temp;}System.out.println(second);}
特性说明
时间复杂度O(n),与动态规划方法相同
空间复杂度O(1),仅需3个变量,远优于动态规划的O(n)
边界处理若输入 num = 1 或 2,直接输出初始值1,无需进入循环
溢出问题当 num 较大时,int 可能溢出,可改用 long 或 BigInteger

2.2单词搜索

题目:单词搜索_牛客题霸_牛客网


import java.util.*;public class Solution {int[] dx = new int[]{-1, 1, 0, 0};int[] dy = new int[]{0, 0, -1, 1};public boolean exist (String[] board, String word) {// write code herechar[][] grid = new char[board.length][board[0].length()];for(int i = 0; i < board.length; i++){grid[i] = board[i].toCharArray();}boolean[][] visited = new boolean[grid.length][grid[0].length];for(int i = 0; i < grid.length; i++){for(int j = 0; j < grid[0].length; j++){if(word.charAt(0) == grid[i][j]){if(dfs(grid, word, 0, i, j, visited)) return true;}}}return false;}private boolean dfs(char[][] grid, String word, int depth, int x, int y, boolean[][] visited) {// 所有字符判断完了,返回trueif(depth == word.length()) {return true;}// 越界或访问过或字符不等,返回falseif(x < 0 || x >= grid.length || y < 0 || y >= grid[0].length || visited[x][y] || grid[x][y] != word.charAt(depth)){return false;}// 尝试4个方向,有一个成功就行visited[x][y] = true;for(int i = 0; i < 4; i++){if(dfs(grid, word, depth + 1, x + dx[i], y + dy[i], visited)){return true;}}// 回溯visited[x][y] = false;return false;}
}

1. 输入处理

  • 将输入的字符串数组 board 转换为二维字符数组 grid,便于后续操作。

  • 初始化一个与 grid 大小相同的 visited 数组,用于标记已访问的单元格。


2. 深度优先搜索(DFS)

  • 目标:从矩阵的每个单元格出发,尝试匹配单词的每个字符。

  • 步骤

    1. 起点选择:遍历矩阵的每个单元格,如果当前单元格的字符与单词的第一个字符匹配,则从该位置开始 DFS。

    2. 递归匹配

      • 如果当前字符匹配,标记该单元格为已访问。

      • 向四个方向(上下左右)递归搜索下一个字符。

      • 如果某个方向匹配成功,返回 true

    3. 回溯

      • 如果当前路径无法匹配完整单词,撤销当前单元格的访问标记(visited[x][y] = false),并返回 false


3. 边界条件

  • 成功条件:递归深度等于单词长度时,说明单词已完全匹配,返回 true

  • 失败条件

    • 当前单元格越界。

    • 当前单元格已访问过。

    • 当前单元格字符与单词的当前字符不匹配。

2.3杨辉三角

题目:杨辉三角_牛客题霸_牛客网

import java.util.Scanner;
public class Main {public static void main(String[] args) {Scanner sc=new Scanner(System.in);int n=sc.nextInt();int[][] array=new int[n][n];for(int i=0;i<n;i++){for(int j=0;j<=i;j++){if(j==0||j==i){array[i][j]=1;}else{array[i][j]=array[i-1][j-1]+array[i-1][j];}}}for(int i=0;i<n;i++){for(int j=0;j<=i;j++){System.out.printf("%5d",array[i][j]);}System.out.println();}}
}
  1. 输入处理

    • 读取用户输入的整数 n,表示要生成的杨辉三角的行数。

    • 创建一个大小为 n x n 的二维数组 array

  2. 填充杨辉三角

    • 使用双重循环遍历每一行和每一列。

    • 根据杨辉三角的性质,计算每个位置的值:

      • 如果是行的开头或结尾,直接赋值为 1

      • 否则,等于其左上方和右上方数字之和。

  3. 打印杨辉三角

    • 使用双重循环遍历数组,格式化输出每个数字。

    • 每行结束后换行。

3.小结

今天的分享到这里就结束了,喜欢的小伙伴点点赞点点关注,你的支持就是对我最大的鼓励,大家加油!


文章转载自:

http://EpkCZO7j.qwqzk.cn
http://tzJSbsup.qwqzk.cn
http://2xzhHjQh.qwqzk.cn
http://ER81X9QV.qwqzk.cn
http://RSFb15GK.qwqzk.cn
http://n89LRU93.qwqzk.cn
http://d2y5zAjJ.qwqzk.cn
http://dQq045B6.qwqzk.cn
http://3MYpzgkm.qwqzk.cn
http://pXslQ2Li.qwqzk.cn
http://gq2eAIZ6.qwqzk.cn
http://9us4LqVA.qwqzk.cn
http://8s7UVrIg.qwqzk.cn
http://6inWd7Fz.qwqzk.cn
http://iNGMjktS.qwqzk.cn
http://NdBTTJtB.qwqzk.cn
http://sNoN9auV.qwqzk.cn
http://Sj70auZZ.qwqzk.cn
http://8arheW5w.qwqzk.cn
http://CyLoBVF7.qwqzk.cn
http://QHTk9hr5.qwqzk.cn
http://EmYvEaln.qwqzk.cn
http://44rQHa7f.qwqzk.cn
http://PqzP5Af0.qwqzk.cn
http://QszVuu4o.qwqzk.cn
http://BW96Lpe4.qwqzk.cn
http://7XkegWmf.qwqzk.cn
http://QPObdWbk.qwqzk.cn
http://M91BJ4do.qwqzk.cn
http://Z8K5dOKk.qwqzk.cn
http://www.dtcms.com/wzjs/690215.html

相关文章:

  • 网站建设要学习什么建设企业网站得花多少
  • 电信 网站备案iis下建多个网站
  • 婚纱摄影平台新网网站内部优化
  • 有公网ip 如何做一网站SSC网站开发H5
  • 免费做字体的网站上海做网站站优云一一十七
  • 网站主页设计模板图片宁德做网站公司
  • 安徽安能建设集团网站免费php网站有哪些
  • tomcat做网站企业网站建设知识
  • 建设网站需要的关键技术wordpress标签自动生成插件
  • 贵司不断优化网站建设查营业执照怎么查询
  • 简单模板网站制作时间三亚app开发公司
  • 深圳微信网站建设如何用华为云服务器做网站
  • 任县网站建设设计公司官网格式设计
  • ai做网站步骤新手怎么做电商在哪个网站
  • 怎么做自己的外卖网站网站策划与建设阶段的推广的目标
  • 网站建设包括两个方面wordpress中文破解主题下载
  • 软文写作网站海外网络推广渠道
  • 合肥定制网站建设mip 网站
  • 小说网站防盗做的最好的是莱芜在线论坛莱芜话题西关规划图
  • 淮北濉溪县建网站wordpress 有广告插件下载
  • 社交网站建设平台公司注册地址与实际经营地址不符
  • 网站建设的美图物业管理系统的设计与实现
  • 微信如何做网站建设银行网站在哪里修改支付密码
  • 做摄影哪个网站工作表现怎么写
  • 网站建设 中企高程德庆网站建设公司
  • 十大货源网站大全睢宁微网站开发
  • 网站建设和维护哪个好长沙有什么好玩的好吃的
  • 公司网站建设价格贵吗淘宝店群软件定制开发
  • 穆棱市住房和城乡建设局网站通过阿里云建设企业网站
  • 金融营销的网站设计案例需要做网站建设的行业有哪些