力扣题目训练(9)

news2024/11/28 10:54:27

2024年2月2日力扣题目训练

  • 2024年2月2日力扣题目训练
    • 412. Fizz Buzz
    • 414. 第三大的数
    • 415. 字符串相加
    • 129. 求根节点到叶节点数字之和
    • 131. 分割回文串
    • 65. 有效数字

2024年2月2日力扣题目训练

2024年2月2日第九天编程训练,今天主要是进行一些题训练,包括简单题3道、中等题2道和困难题1道。惰性太强现在才完成,不过之后我会认真完成的。

412. Fizz Buzz

链接: Fizz Buzz
难度: 简单
题目:
题目描述

运行示例:
运行示例

思路:
这就是一个简单的遍历,只要按要求把特定位置进行修改即可。
代码:

class Solution {
public:
    vector<string> fizzBuzz(int n) {
        vector<string> ans;
        for(int i = 0 ; i < n; i++){
            if((i+1)%3 == 0 && (i+1)%5 == 0){
                ans.push_back("FizzBuzz");
            }else if((i+1)%3 == 0 && (i+1)%5 != 0){
                ans.push_back("Fizz");
            }else if((i+1)%3 != 0 && (i+1)%5 == 0){
                ans.push_back("Buzz");
            }else{
                ans.push_back(to_string(i+1));
            }
        }
        return ans;
    }
};

414. 第三大的数

链接: 第三大的数
难度: 简单
题目:
题目描述

运行示例:
运行示例

思路:
求第三大就是排序然后返回位置第三的数字,不过需要删除重复元素,而且sort是从小到大排序的,这些细节都需要注意和解决。
代码:

class Solution {
public:
    int thirdMax(vector<int>& nums) {
        sort(nums.begin(),nums.end());
        auto it = std::unique(nums.begin(), nums.end());  
        nums.erase(it, nums.end());       
        for(int i = 0; i < nums.size(); i++){
            cout<<nums[i]<<endl;
        }
        return nums.size() >= 3? nums[nums.size()-3]:nums[nums.size()-1];
    }
};

415. 字符串相加

链接: 字符串相加
难度: 简单
题目:
题目描述

运行示例:
运行示例
思路:
遍历然后按照行列式的方法逐位计算。
代码:

class Solution {
public:
    string addStrings(string num1, string num2) {
        string ans="";
        int i = num1.size()-1;
        int j = num2.size()-1;
        int flag = 0;
        while(i >= 0 || j >= 0 || flag != 0){
            int x = i >= 0? (num1[i] - '0') : 0;
            int y = j >= 0? (num2[j] - '0') : 0;
            int temp =  x+ y + flag;
            if(temp >= 10){
                temp -= 10;
                flag = 1;
            }else{
                flag = 0;
            }
            ans += to_string(temp);
            i--;
            j--;
        }
        reverse(ans.begin(), ans.end());
        return ans;
    }
};

129. 求根节点到叶节点数字之和

链接: 数字之和
难度: 中等
题目:
题目描述

运行示例:
运行示例

思路:
这道题求叶子节点数字之和利用深度优先遍历完成。
代码:

class Solution {
public:
    int dfs(TreeNode* root,int ans){
        if(root == NULL) return 0;
        ans = ans * 10 + (root->val);
        if(root->left == NULL && root->right == NULL ){
            return ans;
        }
        return dfs(root->left,ans) + dfs(root->right,ans);
    }
    int sumNumbers(TreeNode* root) {
        return dfs(root,0);
    }
};

131. 分割回文串

链接: 分割回文串
难度: 中等
题目:
题目描述

运行示例:
运行示例

思路:
分割回文可以看出需要利用回溯,而判断是否为回文可以利用动态规划判断。
代码:

class Solution {
private:
    vector<vector<string>> ans;
    vector<string> res;
    int n;
public:
    void dfs(string s, int i, vector<vector<bool>> f){
        if(i == n){
            ans.push_back(res);
            return;
        }
        for(int j = i; j < n; j++){
            if(f[i][j]){
                res.push_back(s.substr(i,j-i+1));
                dfs(s,j+1,f);
                res.pop_back();
            }
        }
    }
    vector<vector<string>> partition(string s) {
        n = s.size();
        vector<vector<bool>> f(n,vector<bool>(n,true));
        for(int i = n -1; i >= 0; i--){
            for(int j = i + 1; j < n; j++){
                f[i][j] = (s[i] == s[j]) && f[i+1][j-1];
            }
        }
        dfs(s,0,f);
        return ans;
    }
};

65. 有效数字

链接: 有效数字
难度: 困难
题目:
题目描述

运行示例:
运行示例

思路:
这道题就是按照要求判断只需根据条件一步一步进行判断即可。
代码:

class Solution {
public:
    bool isNumber(string s) {
        bool isNum = false;
        bool isDecimal = false;
        bool isE = false;
        bool isSign = false;
        for(int i = 0; i < s.size(); i++){
            char  temp = s[i];
            if(0 <= temp-'0' && temp-'0'<= 9){
                isNum = true;
            }else if( temp == '.'){
                if(isDecimal || (!isNum && i == s.size() - 1) || isE)  return false;  
                isDecimal = true;
            }else if(temp == 'e' || temp == 'E'){
                if(isE || !isNum || i == s.size() - 1) return false;
                isE = true;
            }else if(temp == '-' || temp == '+'){
                if((i > 0 && s[i-1] != 'e' && s[i-1] != 'E') || i == s.size() - 1) return false;
                isSign = true;
            }else{
                return false;
            }
        }
        return true;
    }
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1448332.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MogaNet实战:使用 MogaNet实现图像分类任务(二)

文章目录 训练部分导入项目使用的库设置随机因子设置全局参数图像预处理与增强读取数据设置Loss设置模型设置优化器和学习率调整策略设置混合精度&#xff0c;DP多卡&#xff0c;EMA定义训练和验证函数训练函数验证函数调用训练和验证方法 运行以及结果查看测试完整的代码 在上…

第二部分阶段总结

第二部分阶段总结 1.知识补充1.1 nolocal关键字1.2 yield from1.3 深浅拷贝 2.阶段总结3.考试题 1.知识补充 1.1 nolocal关键字 在之前的课程中&#xff0c;我们学过global关键字。 name rootdef outer():name "武沛齐"def inner():global namename 123inner()…

OpenMVG(特征匹配、照片组重建点云、GPS位置信息、GMS)

目录 1 图像的特征匹配 2 图像中提取GPS位置信息 2.1 写入GPS信息到图像中 2.2 读取带有GPS的图像 3 SIFT/AKAZE/AKAZE_MLDB特征提取对比 4 GMS Filter 5 将球形全景图转换为6个透视视图 6 照片组重建点云 1 图像的特征匹配 #include "openMVG/features/feature.…

算法-16-并查集

并查集简介 并查集&#xff1a;一开始&#xff0c;把a&#xff0c;b&#xff0c;c放入并查集&#xff0c;a自己一个集合&#xff0c;b自己一个&#xff0c;c自己一个 提供的方法 1.boolean isSameSet(a,b)&#xff0c;判断ab是否在同一个集合 2.void union(a,b),把a所…

红日靶场(初学)

按照以前的来说一般是有两层网络的内网和外网 这个也是这样的 所以需要两张网卡&#xff0c;一个用来向外网提供web服务&#xff0c;一个是通向内网 以下就是配置 以下就是一些相关信息 外网网段是写成了192.168.111.1/24 WEB PC DC kali 开始扫描 nmap -sS -sV -Pn -T4 19…

软件实例分享,茶楼收银软件管理系统,支持计时计费商品销售会员管理定时语音提醒功能

软件实例分享&#xff0c;茶楼收银软件管理系统&#xff0c;支持计时计费商品销售会员管理定时语音提醒功能 一、前言 以下软件教程以 佳易王茶社计时计费管理系统软件V18.0为例说明 软件文件下载可以点击最下方官网卡片——软件下载——试用版软件下载 问&#xff1a;这个软…

顶级思维方式——认知篇四(全局各个角度考虑结果)

目录 1、空城计司马懿看穿了吗 2、胡宗宪是彻底铲除倭寇、还是要特意留些残余&#xff1f; 3、 都是站在各自的利益、位置上分析问题 4、 识人 5、不要给别人陷害你的机会 6、 最高领导人/管理者&#xff0c;他需要 维护自己英明决策领导、高大形象 7、对领导的投其所好…

C#,数值计算,矩阵的行列式(Determinant)、伴随矩阵(Adjoint)与逆矩阵(Inverse)的算法与源代码

本文发布矩阵&#xff08;Matrix&#xff09;的一些初级算法。 一、矩阵的行列式&#xff08;Determinant&#xff09; 矩阵行列式是指矩阵的全部元素构成的行列式&#xff0c;设A(a)是数域P上的一个n阶矩阵&#xff0c;则所有A(a)中的元素组成的行列式称为矩阵A的行列式&…

【MySQL】待修改

外键约束 含义 外键&#xff1a;用来让两张表的数据之间建立连接&#xff0c;从而保证数据的完整性和一致性。 员工表emp&#xff08;子表&#xff09; idnameagejobsalaryentrydatemanageriddept_id1金庸66总裁200002000-01-01null52张无忌20项目经理125002005-12-05113杨…

栈和队列循环队列(C/C++)

本篇将用数组实现栈、链表实现队列以及使用数组实现循环队列&#xff0c;然后实现了用栈实现队列和用队列实现栈以及一些其他的栈和队列的习题&#xff0c;加深队栈和队列的理解。 若只看对应所需&#xff0c;可直接看文章旁的目录。 1.栈 1.1栈的概念及结构 栈&#xff1a;一…

8.JS中的== 操作符的强制类型转换规则

对于 来说&#xff0c;如果对比双方的类型不一样&#xff0c;就会进行类型转换。假如对比 x 和 y 是否相同&#xff0c;就会进行如下判断流程&#xff1a; 首先会判断两者类型是否相同&#xff0c;类型相同的话就比较两者的大小&#xff1b;类型不相同的话&#xff0c;就会进…

【lesson52】 线程概念

文章目录 线程学习前的了解知识理解线程 线程学习前的了解知识 线程在进程内部执行&#xff0c;是OS调度的基本单位 OS可以做到让进程对进程地址空间进行资源的细粒度划分 比如malloc一块内存空间&#xff0c;我们拿到的一般都是起始位置&#xff0c;但是最终位置我们一般都不…

突发!AI大牛Andrej Karpathy离开OpenAI

刚刚&#xff0c;AI大牛Andrej Karpathy官宣了一条重要消息&#xff1a;他昨天已经从OpenAI离职&#xff0c;不过这中间没有什么戏剧性冲突&#xff0c;他只是想去尝试一下自己的个人项目。 Karpathy在官宣离职的推文中写道&#xff0c;「是的&#xff0c;我昨天离开了OpenAI。…

base64------ “ )!@#$%^*( ”代换 “0-9”

“ )!#$%^&*( ”代换 “0-9” ——[安洵杯 2019]JustBase 题目&#xff1a; VGhlIGdlbxvZ#kgbYgdGhlIEVhcnRoJ#Mgc#VyZmFjZSBpcyBkb!pbmF)ZWQgYnkg dGhlIHBhcnRpY#VsYXIgcHJvcGVydGllcyBvZiB#YXRlci$gUHJlcVudCBvbiBFYXJ)aCBp biBzbxpZCwgbGlxdWlkLCBhbmQgZFzZW(!…

celery异步框架的使用

文章目录 celery的介绍celery的架构celery的快速使用celery 包结构celery 定时 异步 延迟任务django使用celery celery的介绍 celery是什么&#xff1f; -翻译过来是芹菜 -官网&#xff1a;https://docs.celeryq.dev/en/stable/ -吉祥物&#xff1a;芹菜 -分布式的异步任务框架…

计算机网络概述习题拾遗

学习目标&#xff1a; 自下而上第一个提供端到端服务的层次 路由器、交换机、集线器实现的功能层 TCP/IP体系结构的网络接口层对应OSI体系结构的哪两个层次 分组数量对总时延的影响 如果这篇文章对您有帮助&#xff0c;麻烦点赞关注支持一下动力猿吧&#xff01; 学习内容…

《剑指 Offer》专项突破版 - 面试题 44 : 二叉树中每层的最大值(两种方法 + C++ 实现)

目录 前言 一、只用一个队列 二、使用两个队列 前言 题目链接&#xff1a;LCR 044. 在每个树行中找最大值 - 力扣&#xff08;LeetCode&#xff09; 题目&#xff1a; 输入一棵二叉树&#xff0c;请找出二叉树中每层的最大值。例如&#xff0c;输入下图中的二叉树&#x…

VueCLI核心知识综合案例TodoList

目录 1 拿到一个功能模块首先需要拆分组件&#xff1a; 2 使用组件实现静态页面的效果 3 分析数据保存在哪个组件 4 实现添加数据 5 实现复选框勾选 6 实现数据的删除 7 实现底部组件中数据的统计 8 实现勾选全部的小复选框来实现大复选框的勾选 9 实现勾选大复选框来…

RIDERS: Radar-Infrared Depth Estimation for Robust Sensing

RIDERS: 恶劣天气及环境下鲁棒的密集深度估计 论文链接&#xff1a;https://arxiv.org/pdf/2402.02067.pdf 作者单位&#xff1a;浙江大学, 慕尼黑工业大学 代码链接&#xff1a;https://github.com/MMOCKING/RIDERS 1. 摘要&#xff08;Abstract&#xff09; 恶劣的天气条件, …

Spring Boot 笔记 019 创建接口_文件上传

1.1 创建阿里OSS bucket OSS Java SDK 兼容性和示例代码_对象存储(OSS)-阿里云帮助中心 (aliyun.com) 1.2 编写工具类 package com.geji.utils;import com.aliyun.oss.ClientException; import com.aliyun.oss.OSS; import com.aliyun.oss.OSSClientBuilder; import com.aliyun…