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

力扣118,1920题解

记录

2525.5.6

题目:

在这里插入图片描述

思路:

用一个二维数组dp[numRows][numRows]保存每一次动态规划的结果
1.令dp[0][0]=1(第一列)
2.找规律
3.得到如下规律(以下情况均为列数大于1)
if(col==0){
dp[row][col]=1
} else {
dp[row][col]=dp[row-1][col-1]+dp[row-1][col]
}

代码:

class Solution {public List<List<Integer>> generate(int numRows) {List<List<Integer>> result=new ArrayList<List<Integer>>();int[][] dp=new int[numRows][numRows];dp[0][0]=1;for (int i = 1; i < numRows; i++) {for (int j = 0; j <=i; j++) {if(j==0)dp[i][j]=1;else dp[i][j]=dp[i-1][j-1]+dp[i-1][j];}}for (int i = 0; i < dp.length; i++) {List<Integer> tmp=new ArrayList<>();for (int j = 0; j < dp.length; j++) {if(dp[i][j]==0) break;tmp.add(dp[i][j]);}result.add(new ArrayList<>(tmp));}return result;}
}

复杂度:

O(N2
O(N2

题目:

在这里插入图片描述

思路:

构建一个与原数组 nums 等长的新数组,同时令新数组中下标为 i 的元素等于 nums[nums[i]]。

代码:

class Solution {public int[] buildArray(int[] nums) {int n = nums.length;int[] ans = new int[n];for (int i = 0; i < n; ++i) {ans[i] = nums[nums[i]];}return ans;}
}

复杂度:

O(N)
O(N)

http://www.xdnf.cn/news/311887.html

相关文章:

  • 工业质检/缺陷检测领域最新顶会期刊论文收集整理-AAAI2025【持续更新中】
  • 如何分析java对象占用内存大小
  • Linux操作系统如何杀掉close_wait 状态的连接
  • apk 安装后提示该应用未安装
  • neo4j 桌面版的配置信息
  • Labview培训5_以空间换时间的数据采集策略介绍
  • PLL工作原理
  • 【高级IO】多路转接之select
  • 实操3:6位数码管
  • Linux云计算训练营笔记day02(Linux、计算机网络、进制)
  • C++ 装饰器模式详解
  • 对windows的简单介绍
  • 导入飞帆的网页为组件并注入数据驱动
  • 【工具变量】数字人民币试点城市DID(2007-2024年)
  • NVIDIA AI Aerial 正式发布,旨在优化无线网络,并在单一平台上提供全新的生成式 AI 体验
  • DOM基础学习
  • VMware中虚拟机和主机的SSH远程连接
  • 椭球面长度计算的两种公式及投影选择
  • 关于类型转换的细节(隐式类型转换的临时变量和理解const权限)
  • YOLOv8的Python基础--函数篇
  • 【Java】不同变量类型的线程安全、不同修饰符下的继承
  • SCINet 训练代码修改
  • Windows系统升级Nodejs版本
  • Pulse Control LSI vs CPU for motion control
  • 基于STM32、HAL库的TSC2007IPWR触摸屏控制器驱动程序设计
  • MD2card + Deepseek 王炸组合 一键制作小红书知识卡片
  • hybird接口
  • Flutter 合并 ‘dot-shorthands‘ 语法糖,Dart 开始支持交叉编译
  • 左顾右盼-第16届蓝桥第5次STEMA测评Scratch真题第2题
  • java每日精进 5.06【框架之功能权限】