算法
文章平均质量分 61
一只笨猫猫
大数据打工人
(23年5月开始更新博客!!!)
展开
-
算法(C++):加一
给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位,数组中每个元素只存储单个数字。你可以假设除了整数0之外,这个整数不会以零开头。原创 2022-07-16 22:18:17 · 687 阅读 · 1 评论 -
算法题目:目标移动
给定一个数组 nums 以及一个整数 target 。 你需要把数组中等于target的元素移动到数组的最前面,并且其余的元素相对顺序不变。 你的所有移动操作都应该在原数组上面操作。示例 1: 示例 2: 示例3: 思路及算法 解法:双指针 算法:双指针 解题思路:使用left,right指针,从数组尾部开始,向前遍历。 提交结果 243 ms 时间消耗 7.77 MB 空间消耗 复杂度分析 时间复杂度:O(n) n为数组长度,需要遍历一遍数组。空间复杂度:O(1) 原地操作不需要要额外的空间。这是我利用C原创 2022-06-01 22:19:19 · 360 阅读 · 0 评论 -
算法题目:经典二分查找问题(C++)
算法题目:经典二分查找问题(C++) 题目难度:简单 题目描述:在一个排序数组中找一个数,返回该数出现的任意位置,如果不存在,返回 -1。 样例 样例 1: 输入:nums = [1,2,2,4,5,5], target = 2 输出:1 或者 2 样例 样例 2: 输入:nums = [1,2,2,4,5,5], target = 6 输出:-1 时间复杂度:最好是挑战O(logn) 解题方法:二分法查找 利用二分法查找即可解题,这里就不阐述二分法查找的过程了(简单) 学习二分法查找相关内容:数据结构原创 2022-04-26 12:02:43 · 377 阅读 · 0 评论 -
算法题目:判断子序列 (C++)
判断子序列 今天偶然遇到这么一道题目,使用双指针的思路即可解题(简单),但是我看到了另一种的解法,当时的我想不出竟然还有这么一种解法,下面就用这一种解法来解答判断子序列这道算法题。 题目:判断子序列 给定字符串 s 和 t ,判断 s 是否为 t 的子序列。 字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。 示例 1: 输入:s = "abc", t = "ahbgdc" 输出:true原创 2022-04-22 17:27:59 · 1693 阅读 · 2 评论 -
算法题目:独特的摩尔斯编码(C++)
算法题目:独特的摩尔斯编码(C++) 题目难度:简单 题目描述:摩尔斯电码定义了一种标准编码,把每个字母映射到一系列点和短划线,例如:a -> .-,b -> -…,c ->-.-.。 现在给定一个单词列表,每个单词中每个字母可以写成摩尔斯编码。 例如,cab可以写成-.-.-…-,(把c,a,b的莫尔斯编码串接起来)。 我们称之为一个词的转换。 题目要求返回所有单词中不同变换的数量。 给出26个字母的完整编码表格: [".-","-...","-.-.","-..",".","..-."原创 2022-04-22 00:38:34 · 1780 阅读 · 0 评论 -
算法题目:关联查询(C++)
算法题目:关联查询(C++) 题目描述:给定一张员工表datalist1,存储员工ID,员工姓名。 给定一张员工工作时长表datalist2,存储员工ID,月份,工时。 计算每个员工1-3月每月工时及总工时。 输入描述: [[员工ID,员工姓名],[员工ID,员工姓名],…] [[员工ID,月份,工时,月份,工时,月份,工时],[员工ID,月份,工时,月份,工时,月份,工时],…] 输出描述: [[员工姓名,一月份工时,二月份工时,三月份工时,总工时],[员工姓名,一月份工时,二月份工时,三月份工时,总工时原创 2022-04-21 12:19:36 · 1079 阅读 · 0 评论