Pascal's Triangle(帕斯卡三角形)

2023-05-16

题目:

Given numRows,generate the first numRows of Pascal's triangle(杨辉三角). For example, given numRows = 5, Return


[
     [1],
    [1,1],
   [1,2,1],
  [1,3,3,1],
 [1,4,6,4,1]
]  

分析:

  1. 非递归实现,类似于用数组实现。
  2. 递归实现。
class Solution {
public:
    vector<vector<int> > generate(int numRows) {
        vector<vector<int>> result;
        if(numRows < 1){
            return result;
        }
        vector<int> line;
        line.push_back(1);
        result.push_back(line);
        if(numRows == 1){
            return result;
        }
        for(int i = 2; i <= numRows; i++){
            line.clear();
            line.push_back(1);
            for(int j = 0; j < i - 2; j++){
                line.push_back(result[i - 2][j] + result[i - 2][j + 1]);
            }
            line.push_back(1);
            result.push_back(line);
        }
        return result;
    }
};
class Solution {
public:
	vector<vector<int> > generate(int numRows) {
		vector<int> v, temp;
		vector<vector<int> >vv;

		if (numRows == 1)
		{
			v.push_back(1);
			vv.push_back(v);
		}
		else if (numRows > 1)
		{
			vv = generate(numRows-1); //拷贝构造numRows-1时的vv给当前的vv
			temp = vv.back();
			//vv.clear(); //打开该屏蔽只输出该行
			v.push_back(1);
			for (int i = 1; i < numRows - 1; i++)
			{
				v.push_back(temp[i-1]+temp[i]);
			}
			v.push_back(1);
			vv.push_back(v);
		}
		return vv;
	}
};



本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Pascal's Triangle(帕斯卡三角形) 的相关文章

  • 联想H61主板升级BIOS,支持nvme硬盘

    本教程升级有一定风险 xff1a 请阅读文章最后的 遗憾 部分接受再升级 最近因为手上有一台联想的i7 2600主机 xff0c 他的主板是H61的 xff0c 正好看见pcie接口空着 xff0c 在网上看见有人用它升级了拜滕的存储芯片
  • armv8 摘要

    作者 xff1a 蜗蜗 发布于 xff1a 2015 7 7 22 31 分类 xff1a ARMv8A Arch 1 前言 ARMv8 xff08 当前只有A系列 xff0c 即ARMv8 A xff09 架构 xff0c 是ARM公司为
  • android 绘制过程摘要

    1 没有硬件加速的UI绘制过程 xff1a 在Android应用程序进程这一侧 xff0c 每一个窗口都关联有一个Surface 每当窗口需要绘制UI时 xff0c 就会调用其关联的Surface的成员函数lock获得一个Canvas xf
  • opengl 摘要

    一 创建opengl工程 1 第一步设置像素格式 如支持双缓冲 xff0c 设置颜色模式 xff0c 如是rgba xff0c 还是颜色索引 xff08 需调色板 xff09 xff0c 设置模板缓冲区的特征值 2 第二步创建绘制环境 且自
  • Watchdog

    一 简介 软件狗 类似硬件狗 xff0c 硬件狗是被动等 喂 xff0c 系统主要线程主动调用硬件接口 xff0c 告诉系统本线程是正常的 但android 这种framework层中的软件狗本身是一个线程 xff0c 会主动询问系统关键线
  • android Binder 学习

    一 面向过程调用与面向对象调用的区别 1 面向过程调用同一时刻只能服务一个客户 xff0c 而且该过程必须具有锁功能 xff0c 如果有其他客户想要访问 xff0c 则需要等待前一客户完成操作 2 面向对象则能同时服务多个客户 xff0c
  • QEMU KVM 虚拟机移植之性能提高篇小结(android 虚拟机双系统方案)

    一 提升性能核心要素 1 将 OPENGL 接口进行穿透调用 xff0c 下面对opengl穿透做个小结 2 在arm开发板上打开kvm特性 xff0c 这个qcom amp mtk都是实现了的 xff0c 只需要打开开关即可 二 ANDR
  • android 系统基础知识

    一 Activity 启动模式 Activity有四种启动模式 xff1a standard singleTop singleTask singleInstance 可以在AndroidManifest xml中activity标签的属性a
  • android 内存管理概要

    一 zram zram swap 主要原理就是从内存分配一块区域出来用作 swap 分区 xff0c 每次如果内存空间不够了 xff0c 不是把应用程序杀掉 xff0c 而是把应用程序所占用的内存数据复制到 swap 分区 xff0c 等切
  • python统计从1970/1/1 08:00:00到某个时刻的总秒数

    使用场景 xff0c 比如需要从一堆文件中 xff0c 选出时间属性在2017年12月13日00 00 00以后的所有文件 span class token keyword import span os statinfo span clas
  • art知识简要概括

    一 GC分类 1 kGcCauseForAlloc 当没有足够的内存分配时触发 2 kGcCauseBackground 当已使用的内存超过最大值时触发 3 kGcCauseExplicit 当使用System GC时触发 二 GC守护线程
  • SEAndroid 知识点

    一 DAC 1 自主访问控制 Linux上的安全模型叫DAC xff0c 进程的权限与执行它的用户的权限一致 xff0c file针对所有者 所有者组 其他用户制定相关权限 二 MAC 1 强访问控制 SELinux上的安全模型叫MAC x
  • Cgroup 理解

    一 综述 1 cgroup 可以控制进程组的资源 xff08 cpu memory i o等 xff09 2 cgroup 采用树型结构来控制进程组的资源 3 cgroup 利用资源子系统来分割资源 4 cgroup 是lxc xff0c
  • namespace 理解

    当调用clone时 xff0c 设定了CLONE NEWPID xff0c 就会创建一个新的PID Namespace xff0c clone出来的新进程将成为Namespace里的第一个进程 一个PID Namespace为进程提供了一个
  • Bionic 学习

    一 基本概况 1 不与其他libc库兼容 xff0c 有自己的动态链接器 linker 2 不支持c 43 43 异常抛出 3 一共有libc xff08 c基础库 xff09 libm xff08 数学库 xff09 libdl xff0
  • 基于容器原理(docker、lxc、cells)的Android 双系统设计概要

    写在前面 前几年预研加开发android双系统 xff0c 中途用过不少开源代码或者研读过大牛BLOG xff0c 现开放双系统设计原理来回报社区 android容器技术已在android 6 7 8 9 10 11 12 13版本中分别实
  • Android手机可信引导解决方案

    1 概述 Android手机的可信引导过程 xff0c 主要分为三部分 xff0c lk的可信 xff0c boot的可信 xff0c 和system的可信 xff1b 系统上电到lk的启动过程验证 因为和硬件联系紧密 xff0c 基本都由
  • Android智能手机安全解决方案

    1 终端安全解决方案全景 1 1 Android系统框架预览 此外 xff0c 鉴于许多硬件厂商不希望公开其设备驱动程序 xff0c GOOGLE在运行时库层对下屏蔽实现细节 xff0c 对上提供统一接口增加了硬件抽象层 1 2 Andro
  • EFI secure boot

    一 EFI secure boot 是EFI BIOS中的一个子标签 xff0c 同时EFI BIOS提供证书管理功能 xff0c 系统可以同时拥有多个证书供用户选择 EFI只能执行经过正确签名的固件 EFI 证书种类比较多 xff1a P
  • TPM2.0读书笔记

    三种关联性技术 1 Intel TXT技术 2 TrustZone技术 3 AMD PSP技术 TPM实体 1 持久性hierarchy TPM RH PLATFORM 平台 TPM RH OWNER 存储 TPM RH ENDORSEME

随机推荐

  • 适用各种语言的字符串jaccard相似度的计算

    要计算两个文本的相似度 xff0c 现在可能大多会通过相似度模型来计算 xff0c 或者是通过embedding向量来计算 但可解释性差一些 xff0c 有些情况下 xff0c 可能直接用两个文本共同的字符数来计算更直观一些 Jaccard
  • windows下PowerShell别名使用

    个人在windows下习惯用PowerShell替代CMD作为命令行工具 如何自定义命令来提高生产力呢 xff1f linux中有alias工具 xff0c 如 span class token builtin class name ali
  • Linux

    Linux 1 计算机硬件体系 1 1冯诺依体系 由运算器 控制器 存储器 输入设备和输出设备五部门组成 顺序执行程序 计算机处理数据和指令一律用二进制表示 1 2硬件组成 存储器 随机存储内存RAM xff0c 内存 xff0c 逻辑IO
  • c++ threadpool.h

    threadpool h include lt pthread h gt include lt semaphore h gt include lt iostream gt include lt vector gt using namespa
  • java从http url下载文件的简单方法

    br br import java io File br import java net URL br br import org apache commons io FileUtils br br public class Downloa
  • idea运行Sparkstreaming读取hdfs文件遇到的问题

    先贴代码 idea中运行SparkStreaming时 xff0c 动态添加文件至指定目录下 xff0c 结果没有任务信息输出 问题原因 xff1a idea所在主机时间和hdfs集群时间不同步 代码中指定的hdfs目录为非空 启动之前已经
  • [HDU1085][HDU1028][HDU2013] 组合数学入门(母函数、递推)

    先来说一说母函数 xff0c 今天是第一次学 杭电关于母函数的PPT感觉不错 xff0c 挺适合入门看看的 什么是母函数 xff1f 对于序列a0 xff0c a1 xff0c a2 xff0c 构造一函数 xff1a G x 61 a0
  • Elasticsearch系列-Elasticsearch入门教程

    引言 Elasticsearch是著名的开源分布式搜索和数据处理平台 xff0c 是一个基于Lucene的分布式 实时 全文搜索系统 xff0c 其稳定 可靠 高可用 可大规模扩展等特性 xff0c 使得Elasticsearch的应用十分
  • Elasticsearch系列-Elasticsearch集群工作原理

    引言 ELasticsearch作为一个分布式搜索引擎 xff0c 能够出色地支持集群模式 动态水平扩容 故障转移等分布式系统特性 xff0c 这是其作为全文搜索引擎首选的重要原因 本文从零开始描述集群的配置和扩容过程 xff0c 让你对E
  • Elasticsearch系列-集群API(一)

    引言 Elasticsearch提供了大量了的Rest API用以操作Elastic search的相关功能 xff0c 提供了极大的便利 xff0c 掌握这些API是熟练地使用Elasticsearch的前提 Elastic search
  • JVM系列-CPU使用率高问题排查方法

    引言 Java程序在实际生产过程中经常遇到CPU使用率高的问题 xff0c 那么应该如何排查问题的原因呢 xff0c 本文大概描述一下排查方法 一 排查占用CPU的进程 使用top命令 xff0c 在大写打开的情况下按P键或者在大写没有打开
  • python判断list中的值是否完全一样

    对于一个python的list a span class token operator 61 span span class token punctuation span span class token number 1 span spa
  • 生产问题排查-SSLException:Unrecognized SSL message,plainetxt connection异常排查

    引言 最近在一次生产问题中遇到了SSLException Unrecognized SSL message plainetxt connection错误异常信息 xff0c 背景为调用微信api 获取相应信息的时候报错 xff0c 微信ap
  • 【云原生】本地搭建Openshift单机最小化开发环境

    文章目录 一 什么是CodeReady Container xff08 CRC xff09 xff1f 二 本地化部署CodeReady Container三 Code Ready Container的使用 公众号 xff1a MCNU云原
  • 手把手kubernetes本地化部署(含疑难杂症排查解析)

    文章目录 一 什么是Kubernetes xff1f 二 Kubernetes的基本概念PodDeploymentServiceNamespaceConfigMapSecret 三 Kuberntes单机本地部署3 1 安装minikube
  • chatGPT大规模使用kubernetes,云原生技术在AI领域也大有可为

    文章目录 一 云原生在AI领域的应用方向1 1 弹性部署1 2 自动化和可维护性1 3安全性和隔离性 二 云原生在AI领域的应用案例2 1 chatGPT全面使用云原生技术2 2 TensorFlow Serving和k8s及docker的
  • 数据清洗经验

    平时习惯了在某些特定的数据集合上做实验 xff0c 简单的tokenization 预处理等步骤就足够了 但是在数据越来越大的年代 xff0c 数据清洗越来越重要 xff0c 也越来越复杂 看到Philip J Guo 的这篇英文文章 Pa
  • Jetson Nano平台常用软件工具

    本文介绍几个Jetson Nano平台常用的小工具 1 jtop jtop可以查看Jetson Nano目前CPU工作负载情况 xff0c 当前温度等信息 安装方法 xff1a sudo apt get install python pip
  • 如何计算前缀,网络,子网和主机号?

    计算网络掩码长度 xff08 也称为前缀 xff09 xff1a 将网络掩码的点分十进制表示形式转换为二进制 然后 xff0c 从第一个八位位组的最高有效位 xff08 即二进制数的左侧 xff09 开始 xff0c 计算连续的1位的数目
  • Pascal's Triangle(帕斯卡三角形)

    题目 xff1a Given numRows generate the first numRows of Pascal 39 s triangle xff08 杨辉三角 xff09 For example given numRows 61