【每日刷题】Day65

【每日刷题】Day65

🥕个人主页:开敲🍉

🔥所属专栏:每日刷题🍍

🌼文章目录🌼

[1. LCR 175. 计算二叉树的深度 - 力扣(LeetCode)](#1. LCR 175. 计算二叉树的深度 - 力扣(LeetCode))

[2. 序列找数_牛客题霸_牛客网 (nowcoder.com)](#2. 序列找数_牛客题霸_牛客网 (nowcoder.com))

[3. 删除重复字符_牛客题霸_牛客网 (nowcoder.com)](#3. 删除重复字符_牛客题霸_牛客网 (nowcoder.com))

1. LCR 175. 计算二叉树的深度 - 力扣(LeetCode)

//思路:分治思想+深度优先遍历。将每一个结点视为根节点,返回其左右子树较深的深度。

int _calculateDepth(struct TreeNode* root)

{

if(!root)

return 0;

int left = _calculateDepth(root->left);//计算左子树深度

int right = _calculateDepth(root->right);//计算右子树深度

return 1+(left>right?left:right);//返回更大的,同时加上自身

}

int calculateDepth(struct TreeNode* root)

{

return _calculateDepth(root);

}

2. 序列找数_牛客题霸_牛客网 (nowcoder.com)

//思路:哈希表。

int main()

{

int ans = 0;

int n = 0;

scanf("%d",&n);

int x = 0;

int hash[20] = {0};

while (scanf("%d", &x) != EOF)

{

hash[x] = 1;

}

for(int i = 0;i<=n;i++)

{

if(hash[i]==0)

ans = i;

}

printf("%d",ans);

return 0;

}

3. 删除重复字符_牛客题霸_牛客网 (nowcoder.com)

//思路:哈希表。

int main()

{

char s[1001] = {0};

int count = 0;

char c = 0;

int hash[1001] = {0};

while(scanf("%c",&c)!=EOF)

{

s[count++] = c;//获取字符串

}

for(int i = 0;i<count;i++)

{

hash[s[i]-'a'] = 1;//字符-'a'的值作为key,val为1,确保之后重复出现的字符只出现一次

}

char ans[1001] = {0};

int n = 0;

for(int i = 0;i<count;i++)

{

if(hash[s[i]-'a'])//遍历字符串,如果其key的val为1,存入答案字符串中

{

ans[n++] = s[i];

hash[s[i]-'a'] = 0;//再将val置为0,确保重复字符只出现一次

}

}

for(int i = 0;i<n;i++)

{

printf("%c",ans[i]);

}

return 0;

}

相关推荐
-dzk-16 小时前
【代码随想录】LC 59.螺旋矩阵 II
c++·线性代数·算法·矩阵·模拟
风筝在晴天搁浅16 小时前
hot100 78.子集
java·算法
Jasmine_llq16 小时前
《P4587 [FJOI2016] 神秘数》
算法·倍增思想·稀疏表(st 表)·前缀和数组(解决静态区间和查询·st表核心实现高效预处理和查询·预处理优化(提前计算所需信息·快速io提升大规模数据读写效率
超级大只老咪16 小时前
快速进制转换
笔记·算法
m0_7066532317 小时前
C++编译期数组操作
开发语言·c++·算法
故事和你9117 小时前
sdut-Java面向对象-06 继承和多态、抽象类和接口(函数题:10-18题)
java·开发语言·算法·面向对象·基础语法·继承和多态·抽象类和接口
qq_4232339017 小时前
C++与Python混合编程实战
开发语言·c++·算法
TracyCoder12317 小时前
LeetCode Hot100(19/100)——206. 反转链表
算法·leetcode
m0_7155753417 小时前
分布式任务调度系统
开发语言·c++·算法