【LeetCode】1544. 整理字符串、LCP 44. 开幕式焰火
创始人
2025-05-29 04:32:42
0

 作者:小卢 

专栏:《Leetcode》

喜欢的话:世间因为少年的挺身而出,而更加瑰丽。                                  ——《人民日报》


目录

1544. 整理字符串 

 LCP 44. 开幕式焰火


1544. 整理字符串 

1544. 整理字符串 

题目描述:

给你一个由大小写英文字母组成的字符串 s 。

一个整理好的字符串中,两个相邻字符 s[i] 和 s[i+1],其中 0<= i <= s.length-2 ,要满足如下条件:

若 s[i] 是小写字符,则 s[i+1] 不可以是相同的大写字符。
若 s[i] 是大写字符,则 s[i+1] 不可以是相同的小写字符。
请你将字符串整理好,每次你都可以从字符串中选出满足上述条件的 两个相邻 字符并删除,直到字符串整理好为止。

请返回整理好的 字符串 。题目保证在给出的约束条件下,测试样例对应的答案是唯一的。

注意:空字符串也属于整理好的字符串,尽管其中没有任何字符。

示例:

思路:

这里不可以使用暴力,过不去的,血泪教训!!!

这里可以利用栈,当栈为空时or两个字符不互为大小字母时,入栈

否则出栈。

代码:

char * makeGood(char * s){if(strlen(s)==1||strlen(s)==0) return s;//防止单字符和空字符的字符串的情况int i=0;int top=0;//模拟出栈入栈for(int i=0;s[i]!='\0';i++){if(top==0||abs(s[top-1]-s[i])!=32)s[top++]=s[i];elsetop--;//出栈,这里会覆盖,不会出现leeetcode的情况}s[top]='\0';return s;
}

 LCP 44. 开幕式焰火

 LCP 44. 开幕式焰火

 题目描述:

「力扣挑战赛」开幕式开始了,空中绽放了一颗二叉树形的巨型焰火。
给定一棵二叉树 root 代表焰火,节点值表示巨型焰火这一位置的颜色种类。请帮小扣计算巨型焰火有多少种不同的颜色。

示例:

 思路:

这里我们利用前序遍历的思路,然后用一个数组记录出现的数字(颜色)然后来这个数组来判断是否count++

代码:

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     struct TreeNode *left;*     struct TreeNode *right;* };*/void dfs(struct TreeNode* root,int *arr,int*count)
{if(root==NULL)return;//前序遍历if(arr[root->val]==0)//之前没有这个颜色(数字)的烟火{(*count)++;arr[root->val]=1;}dfs(root->left,arr,count);dfs(root->right,arr,count);
}
int numColor(struct TreeNode* root){int arr[1001]={0};int count=0;dfs(root,arr,&count);return count;
}

相关内容

热门资讯

104.【GoLang基础】 GO语言(一)、GoLang环境安装1.安装基本环境包2.配置全局环境3.安装编译器 GoLand(...
【C++进阶】unordere... 文章目录unordered系列容器介绍unordered_setunordered_set的模板参数...
数据库缓存 许多web停用都将数据保存到RDBMS(关系型数据库)中,...
各地政策持续加力 城市更新提速 人民网北京5月31日电(记者许维娜)近日,中共中央办公厅、国务院办公厅印发《关于持续推进城市更新行动...
河南胜蓝律师事务所开展《中华人... 在“六一国际儿童节”来临之际,河南胜蓝律师事务所刘红平主任带领律师志愿者走进驻马店市博爱幼儿园,开展...
Java每日一练(202303... 目录 1. 出现次数最多的字符  🌟 2. 最后一个单词的长度  🌟...
基于卷积神经网络CNN的图像分... 目录 背影 卷积神经网络CNN的原理 卷积神经网络CNN的定义 卷积神经网络CNN的神经元 卷积神经...
每周股票复盘:ST金鸿(000... 截至2025年5月30日收盘,ST金鸿(000669)报收于2.26元,较上周的2.22元上涨1.8...
每周股票复盘:洁特生物(688... 截至2025年5月30日收盘,洁特生物(688026)报收于15.68元,较上周的15.08元上涨3...
莱伯泰科股价小幅下跌 专利侵权... 截至2025年5月30日收盘,莱伯泰科股价报31.81元,较前一交易日下跌0.21元,跌幅0.66%...