【每天40分钟,我们一起用50天刷完 (剑指Offer)】第四十七天 47/50
专注 效率 记忆
预习 笔记 复习 做题
欢迎观看我的博客,如有问题交流,欢迎评论区留言,一定尽快回复!(大家可以去看我的专栏,是所有文章的目录)
文章字体风格:
红色文字表示:重难点★✔
蓝色文字表示:思路以及想法★✔
如果大家觉得有帮助的话,感谢大家帮忙
点赞!收藏!转发!
本博客带大家一起学习,我们不图快,只求稳扎稳打。
由于我高三是在家自学的,经验教训告诉我,学习一定要长期积累,并且复习,所以我推出此系列。
只求每天坚持40分钟,一周学5天,复习2天
也就是一周学10道题
50天后我们就可以学完76道题,相信50天后,我们一定可以有扎实的代码基础!我们每天就40分钟,和我一起坚持下去吧!
qq群:866984458
本题出自 acwing网站
这个系列是免费的
打卡即刻退回费用。
第四十七天【剑指Offer例题代码 系列】
- 72. 求1+2+…+n【递归】
- 73. 不用加减乘除做加法【二进制 加法】
- int sum = num1 ^ num2;//不进位的加法
- int carry = (num1 & num2)<<1;//进位
- 74. 构建乘积数组
72. 求1+2+…+n【递归】

(递归) O(n)
最直接的想法就是用递归,sum(n) = n+sum(n-1),但是要注意终止条件,由于求的是1+2+…+n的和,所以需要在n=0的时候跳出递归,但是题目要求不能使用if,while等分支判断,可以考虑利用&&短路运算来终止判断。
时间复杂度分析:递归,复杂度为O(n)。
class Solution {
public:int getSum(int n) {int res = n;n > 0 && (res += getSum(n - 1));return res;}
};
73. 不用加减乘除做加法【二进制 加法】
int sum = num1 ^ num2;//不进位的加法
int carry = (num1 & num2)<<1;//进位

class Solution {
public:int add(int num1, int num2){while(num2!=0){int sum = num1 ^ num2;//不进位的加法int carry = (num1 & num2)<<1;//进位num1 = sum;num2 = carry;}return num1;}
};
74. 构建乘积数组

(动归) O(n)
用两个数组left和right,left[i]=A[0]A[1]…*A[i-1], left[i]=A[i-1]*left[i-1]; right[i] = A[i+1]A[i+2]…*A[n-1],则right[i]=A[i+1]*right[i+1]。
最后结果B[i]=left[i]*right[i]。
时间复杂度分析:需要遍历数组,复杂度为O(n)
class Solution {
public:vector<int> multiply(const vector<int>& A) {vector<int>left(A.size(),1);vector<int>right(A.size(),1);for(int i = 1;i<A.size();i++){left[i] = A[i-1]*left[i-1];}for(int i = A.size()-2;i>=0;i--){right[i] = A[i+1]*right[i+1];}vector<int>B(A.size(),0);for(int i = 0;i<A.size();i++){B[i] = left[i]*right[i];}return B;}
};
相关文章:
【每天40分钟,我们一起用50天刷完 (剑指Offer)】第四十七天 47/50
专注 效率 记忆 预习 笔记 复习 做题 欢迎观看我的博客,如有问题交流,欢迎评论区留言,一定尽快回复!(大家可以去看我的专栏,是所有文章的目录) 文章字体风格: 红色文字表示&#…...
离散型制造业生产管理云MES系统解决方案
典型的离散制造业主要包括机械、电子、航空、汽车等行业,这些企业既有按订单生产,也有按库存生产,既有批量生产,也有单件小批生产。那么,注重生产计划的制定,生产的快速响应是离散行业MES系统应用的关键。 …...
【Vue】全家桶介绍
文章目录 概述核心Vue.Js浏览器开发插件vue-devtools项目构建工具:vue-cli路由管理器 : vue-Router状态管理模式:vuex网络请求库:AxiosUI框架: iview、vant、elementUI打包工具: webpack来源 概述 Vue全家…...
【雕爷学编程】MicroPython动手做(33)——物联网之天气预报2
天气(自然现象) 是指某一个地区距离地表较近的大气层在短时间内的具体状态。而天气现象则是指发生在大气中的各种自然现象,即某瞬时内大气中各种气象要素(如气温、气压、湿度、风、云、雾、雨、闪、雪、霜、雷、雹、霾等ÿ…...
macOS 虚拟桌面黑屏(转)
转自:macOS重置虚拟桌面、macOS 虚拟桌面黑屏 有几次出现如图的情况,以为是iTerm的问题,但是在关闭软件,重启之后,依旧无效。 后面经过网友告知,才知道是虚拟桌面的问题。 为了清理这个问题,有以…...
查看gz文件 linux zcat file.gz mtx.gz
可以使用以下命令来查看 gz 压缩文件的内容: zcat file.gz 1 该命令会将 file.gz 文件解压并输出到标准输出,可以通过管道符将其与 grep 命令结合使用来查找需要的关键词,例如: zcat file.gz | grep keyword 1 该命令会将 file.gz…...
互联网——根服务器
说明 根服务器是互联网域名系统(DNS)中最高级别的服务器之一。它们负责管理整个DNS系统的顶级域名空间,例如.com、.org和.net等。 根服务器的主要功能是将用户的DNS查询转发到适当的顶级域名服务器。当用户在浏览器中输入一个域名ÿ…...
华为OD机试之报文回路(Java源码)
题目描述 IGMP 协议中响应报文和查询报文,是维系组播通路的两个重要报文,在一条已经建立的组播通路中两个相邻的 HOST 和 ROUTER,ROUTER 会给 HOST 发送查询报文,HOST 收到查询报文后给 ROUTER 回复一个响应报文,以维持…...
林大数据结构【2019】
关键字: 哈夫曼树权值最小、哈夫曼编码、邻接矩阵时间复杂度、二叉树后序遍历、二叉排序树最差时间复杂度、非连通无向图顶点数(完全图)、带双亲的孩子链表、平衡二叉树调整、AOE网关键路径 一、判断 二、单选 三、填空 四、应用题...
2023华数杯数学建模A题思路分析 - 隔热材料的结构优化控制研究
# 1 赛题 A 题 隔热材料的结构优化控制研究 新型隔热材料 A 具有优良的隔热特性,在航天、军工、石化、建筑、交通等 高科技领域中有着广泛的应用。 目前,由单根隔热材料 A 纤维编织成的织物,其热导率可以直接测出;但是 单根隔热…...
Linux常用命令——dos2unix命令
在线Linux命令查询工具 dos2unix 将DOS格式文本文件转换成Unix格式 补充说明 dos2unix命令用来将DOS格式的文本文件转换成UNIX格式的(DOS/MAC to UNIX text file format converter)。DOS下的文本文件是以\r\n作为断行标志的,表示成十六进…...
【NLP pytorch】基于BERT_TextCNN新闻文本分类实战(项目详解)
基于BERT_TextCNN新闻文本分类实战项目 1 数据集介绍2 模型介绍3 数据预处理3.1 数据集加载3.2 统计文本长度分布4 BERT模型4.1 HuggingFace介绍4.2 HuggingFace使用4.2.1 加载预训练模型4.2.2 预训练模型的使用4.3 BERT模型使用4.3.1 编码和解码4.3.2 批处理4.3.3 词向量处理5…...
决策树与随机森林
目录 决策树是:Why:How:基本概念决策树生成举例决策树缺点参考 Demo 随机森林1.是:2.Why:3.How:参考 Demo 决策树 是: 1.一种有监督的分类(或预测)算法。 2.利用属性、…...
Nginx 网站服务
Nginx 稳定性高 (但是没有apache稳定) 版本号:1.12 1.20 1.22 系统资源消耗低 (处理http请求的并发能力很高,单台物理服务器可以处理30000-50000个并发请求) 稳定:一般在企业中,为了保持服务器稳定,并发量的…...
Python爬虫——爬虫时如何知道是否代理ip伪装成功?
前言 在进行爬虫时,我们可能需要使用代理IP来伪装自己的身份,以避免被网站封禁。如何判断代理IP是否伪装成功呢?本篇文章将围绕这个问题展开讲解,同时提供Python代码示例。 1. 确认代理IP地址 首先,我们需要确认代理…...
flink1.17 json_tuple udf 实现
使用效果 思路: flink1.17要求复杂类型必须通过hint指定每个字段类型, 只有固定个数,都是基础类型的flink才能自动推断. 这就导致json_tuple返回不定长参数无法搞定. 所以这里通过返回字符串数组来解决. 同时带来新的问题: 数组元素类型一样,导致fastjson2解析到的int也需要…...
Vue3实现6位验证码输入框,用户可以连续输入和删除
实现代码 可以随意填写删除 <template><div class"verification-container"><inputv-for"(code, index) in verificationCodes":key"index"v-model"verificationCodes[index]"input"handleInput(index, $event…...
如何在终端设置代理(设置jupyter notebook同理)
设置代理 在终端(我用的gitbash)下执行 set HTTP_PROXYhttp://<user>:<password><proxy server>:<proxy port> set HTTPS_PROXYhttp://<user>:<password><proxy server>:<proxy port>其中: user、password&#…...
git报错:Error merging: refusing to merge unrelated histories
碰对了情人,相思一辈子。 打命令:git pull origin master --allow-unrelated-histories 然后等一会 再push 切记不要有冲突的代码 需要改掉~...
QT-QLabel显示图片,按QLabel控件的大小自动缩放
要按照 QLabel 控件的大小调整并显示图片,你可以使用 scaled() 函数将 QPixmap 对象进行缩放,然后将缩放后的图片设置到 QLabel 上。下面是一个示例代码: #include <QApplication> #include <QLabel> #include <QPixmap>i…...
springboot 百货中心供应链管理系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,百货中心供应链管理系统被用户普遍使用,为方…...
Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
Zustand 状态管理库:极简而强大的解决方案
Zustand 是一个轻量级、快速和可扩展的状态管理库,特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...
Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件
今天呢,博主的学习进度也是步入了Java Mybatis 框架,目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学,希望能对大家有所帮助,也特别欢迎大家指点不足之处,小生很乐意接受正确的建议&…...
vscode(仍待补充)
写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh? debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...
如何为服务器生成TLS证书
TLS(Transport Layer Security)证书是确保网络通信安全的重要手段,它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书,可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个生活电费的缴纳和查询小程序
一、项目初始化与配置 1. 创建项目 ohpm init harmony/utility-payment-app 2. 配置权限 // module.json5 {"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_NETWORK_INFO"…...
JDK 17 新特性
#JDK 17 新特性 /**************** 文本块 *****************/ python/scala中早就支持,不稀奇 String json “”" { “name”: “Java”, “version”: 17 } “”"; /**************** Switch 语句 -> 表达式 *****************/ 挺好的ÿ…...
SpringTask-03.入门案例
一.入门案例 启动类: package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...
Typeerror: cannot read properties of undefined (reading ‘XXX‘)
最近需要在离线机器上运行软件,所以得把软件用docker打包起来,大部分功能都没问题,出了一个奇怪的事情。同样的代码,在本机上用vscode可以运行起来,但是打包之后在docker里出现了问题。使用的是dialog组件,…...
