leetcode算法题学习
文章平均质量分 69
记录leetcode上面一些题目的解题思路
远水高山
平时求生存,
周末求发展。
我命由我不由天!
展开
-
二进制中1的个数
一、题目描述请实现一个函数,输入一个无符号整数(以二进制串形式),输出该数二进制表示中 1 的个数。例如,把 9 表示成二进制是 1001,有 2 位是 1。因此,如果输入 9,则该函数输出 2。示例 1:输入:00000000000000000000000000001011输出:3解释:输入的二进制串 00000000000000000000000000001011 中,共有三位为 ‘1’。示例 2:输入:00000000000000000000000010000000输出:1解释:输入原创 2021-05-05 23:30:00 · 216 阅读 · 0 评论 -
第一个只出现一次的字符
一、题目描述:在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写).(从0开始计数)示例:s = “google”返回 4s = “”返回 -1二、解题思路:1.两次遍历 + 字典统计:创建字典用于统计,key为字符,value为字符出现的总次数第一次遍历,统计每个字符出现的次数第二次遍历,当字符次数为1时,返回下标;遍历结束,如果不存在次数为1的字符,返回-1考虑特殊情况原创 2021-04-27 22:35:46 · 104 阅读 · 0 评论 -
剑指 Offer 57. 和为s的两个数字
一、题目描述:输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得它们的和正好是s。如果有多对数字的和等于s,则输出任意一对即可。示例 1:输入:nums = [2,7,11,15], target = 9输出:[2,7] 或者 [7,2]示例 2:输入:nums = [10,26,30,31,47,60], target = 40输出:[10,30] 或者 [30,10]限制:1 <= nums.length <= 10^51 <= nums[i] <=原创 2021-04-24 00:14:02 · 93 阅读 · 1 评论