算法
Lavender_LoveQaQ
一直很努力的小白
展开
-
Leetcode——《剑指offer》20.表示数值的字符串
题目描述:请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100"、“5e2”、"-123"、“3.1416”、"-1E-16"、“0123"都表示数值,但"12e”、“1a3.14”、“1.2.3”、"±5"及"12e+5.4"都不是。确定有限状态自动机预备知识确定有限状态自动机(以下简称「自动机」)是一类计算模型。它包含一系列状态,这些状态中:有一个特殊的状态,被称作「初始状态」。还有一系列状态被称为「接受状态」,它们组成了一个特殊的集合。其中,一个状态可能既是「初转载 2020-09-02 12:36:49 · 170 阅读 · 0 评论 -
Leetcode——136只出现一次的数字(位运算:异或)
题目描述:给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]输出: 4解题思路:抓住题目中很重要的一点,其他的数字都出现两次那么我们可以采用位运算按照位运算的特点,与两个同样的数字进行位运算,原来的数不变 例如: 4^2=110=6 6^2=100=4所以在所有数字异或完后原创 2020-06-28 22:33:24 · 164 阅读 · 0 评论 -
Leetcode——209长度最小的子数组(滑动窗口)
题目描述:给定一个含有 n 个正整数的数组和一个正整数 s ,找出该数组中满足其和 ≥ s 的长度最小的连续子数组,并返回其长度。如果不存在符合条件的连续子数组,返回 0。示例:输入: s = 7, nums = [2,3,1,2,4,3]输出: 2解释: 子数组 [4,3] 是该条件下的长度最小的连续子数组解题思路:算法:滑动模块的使用,类似二分查找的思路;定义:sum(i,j)=nums[i]+nums[i+1]+...+nums[j-1];1.此题即求 所有的满足 sum(i,j)原创 2020-06-28 20:41:30 · 173 阅读 · 0 评论 -
1031 查验身份证 (15 分) 一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。
1031 查验身份证 (15 分)一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下:首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};然后将计算的和对11取模得到值Z;最后按照以下关系对应Z值与校验码M的值:Z:0 1 2 3 4 5 6 7 8 9 10M:1 0 X 9 8 7 ...原创 2019-03-08 15:53:07 · 29730 阅读 · 2 评论 -
1004 成绩排名 (20 分) 读入 n(>0)名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。
输入格式:每个测试输入包含 1 个测试用例,格式为第 1 行:正整数 n第 2 行:第 1 个学生的姓名 学号 成绩第 3 行:第 2 个学生的姓名 学号 成绩 ... ... ...第 n+1 行:第 n 个学生的姓名 学号 成绩其中姓名和学号均为不超过 10 个字符的字符串,成绩为 0 到 100 之间的一个整数,这里保证在一组测试用例中没有两个学生的成绩是相同的。输出格...原创 2019-03-04 16:44:50 · 5477 阅读 · 3 评论 -
逆序输出正整数以及汉诺塔问题
一.逆序输出正整数#include<iostream>using namespace std; void print(int n)//递归的思想 { cout<<n%10; if(n>=10) { print(n/10); }}int main(){ int n; cin>>n; print(n); return 0;}...原创 2019-03-04 20:46:41 · 820 阅读 · 0 评论 -
1076 Wifi密码 (15 分)
下面是微博上流传的一张照片:“各位亲爱的同学们,鉴于大家有时需要使用 wifi,又怕耽误亲们的学习,现将 wifi 密码设置为下列数学题答案:A-1;B-2;C-3;D-4;请同学们自己作答,每两日一换。谢谢合作!!~”—— 老师们为了促进学生学习也是拼了…… 本题就要求你写程序把一系列题目的答案按照卷子上给出的对应关系翻译成 wifi 的密码。这里简单假设每道选择题都有 4 个选项,有且只有 1...原创 2019-03-12 22:47:32 · 1123 阅读 · 0 评论 -
Leetcode—67二进制求和
#include<iostream>#include<string>using namespace std; class Solution {public: string addBinary(string a, string b) { string ans = ""; int len1,len2,flag = 0,i = 0; len1 =...原创 2019-07-10 20:40:37 · 100 阅读 · 0 评论