当前位置:网站首页>365 days challenge LeetCode1000 questions - Day 046 Generate a string with odd number of each character + add two numbers + valid parentheses
365 days challenge LeetCode1000 questions - Day 046 Generate a string with odd number of each character + add two numbers + valid parentheses
2022-08-01 21:35:00 【ShowM3TheCode】
1374. 生成每种字符都是奇数个的字符串

代码实现(首刷自解)
class Solution {
public:
string generateTheString(int n) {
string ans = "";
if (n % 2 == 0) {
ans = "z";
for (int i = 0; i < n - 1; i++) {
ans.append("a");
}
}
else {
for (int i = 0; i < n; i++) {
ans.append("a");
}
}
return ans;
}
};
2. 两数相加

代码实现(首刷自解)
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0), next(nullptr) {} * ListNode(int x) : val(x), next(nullptr) {} * ListNode(int x, ListNode *next) : val(x), next(next) {} * }; */
class Solution {
public:
ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) {
int flag = 0;
ListNode* pl1 = l1, *pl2 = l2;
ListNode* ans = new ListNode();
ListNode* curNode = ans;
int curVal = 0;
while (pl1 && pl2) {
curVal = pl1->val + pl2->val + flag;
ListNode* tmp = new ListNode(curVal % 10);
curNode->next = tmp;
curNode = tmp;
flag = 0;
if (curVal >= 10) flag = 1;
pl1 = pl1->next;
pl2 = pl2->next;
}
while (pl1) {
curVal = pl1->val + flag;
ListNode* tmp = new ListNode(curVal % 10);
curNode->next = tmp;
curNode = tmp;
flag = 0;
if (curVal >= 10) flag = 1;
pl1 = pl1->next;
}
while (pl2) {
curVal = pl2->val + flag;
ListNode* tmp = new ListNode(curVal % 10);
curNode->next = tmp;
curNode = tmp;
flag = 0;
if (curVal >= 10) flag = 1;
pl2 = pl2->next;
}
if (flag) {
ListNode* tmp = new ListNode(1);
curNode->next = tmp;
}
return ans->next;
}
};
20. 有效的括号

代码实现(自解)
class Solution {
private:
bool match(char l, char r) {
if (l == '(') return r == ')';
if (l == '{') return r == '}';
if (l == '[') return r == ']';
return false;
}
public:
bool isValid(string s) {
set<char> left = {
'(', '{', '[' };
set<char> right = {
')', '}', ']'};
stack<char> _stack;
for (char c : s) {
if (left.count(c)) {
_stack.push(c);
}
else {
if (_stack.empty()) return false;
if (match(_stack.top(), c)) _stack.pop();
else return false;
}
}
if (!_stack.empty()) return false;
return true;
}
};
边栏推荐
猜你喜欢

RecycleView的使用

可视化——Superset使用

Based on php Xiangxi tourism website management system acquisition (php graduation design)

牛血清白蛋白-葡聚糖-叶黄素纳米颗粒/半乳糖白蛋白磁性阿霉素纳米粒的制备

JVM内存结构详解

ImportError: `save_weights` requires h5py.问题解决

TP5-NPs负载噻吩类化合物TP5白蛋白纳米粒/阿魏酸钠新糖牛血清蛋白纳米粒

C专家编程 序

基于php在线考试管理系统获取(php毕业设计)

NFT的10种实际用途(NFT系统开发)
随机推荐
C陷阱与缺陷 第7章 可移植性缺陷 7.10 首先释放,然后重新分配
FusionGAN:A generative adversarial network for infrared and visible image fusion文章学习笔记
用户量大,Redis没法缓存响应,数据库宕机?如何排查解决?
【Objective-C中的@synthesize】
An online JVM FullGC made it impossible to sleep all night and completely crashed~
NFT的10种实际用途(NFT系统开发)
【Unity实战100例】文件压缩Zip和ZIP文件的解压
作业8.1 孤儿进程与僵尸进程
ARFoundation入门教程U2-AR场景截图截屏
Chapter 12, target recognition of digital image processing
分类接口,淘宝分类详情 API
Shell编程之条件语句
图像融合GANMcC学习笔记
C陷阱与缺陷 第7章 可移植性缺陷 7.8 随机数的大小
property语法
C专家编程 序
The difference between groupByKey and reduceBykey
sizeof的详细解说和与strlen的区别
Spark practice questions + answers
TP5-NPs负载噻吩类化合物TP5白蛋白纳米粒/阿魏酸钠新糖牛血清蛋白纳米粒