算法之美
栏主在Letcode,牛客,CF上做的题目,分享自己的思路与大牛们的代码与思路。
老布丁~
懂得越多,不懂得越多。
展开
-
算法题3:找卧底
找卧底时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 256M,其他语言512M题目描述:在包含 n+1 个数的序列 a 中找出重复的数。序列 a 中包含从 1 到 n 的整数,且只有一个数有重复值。要求时间复杂度为 O(n),额外空间复杂度为 O(1)。输入实例:4,[1,2,1,4,3]输出实例:1思路:解法一 先排序,再找重复值排序可以直接使用sort()函数,其时间复杂度为 O(nlog(n)),接着遍历数组,如果相邻两...原创 2021-03-09 18:53:53 · 201 阅读 · 0 评论 -
算法题2:单链表的排序
单链表的排序时间限制:C/C++ 2秒,其他语言4秒空间限制:C/C++ 256M,其他语言512M题目描述:给定一个无序单链表,实现单链表的排序(按升序排序)。输入实例:[1,3,2,4,5]输出实例:[1,2,3,4,5]思路:对链表排序可以使用冒泡,选择,不能使用快排。此题使用选择会超时,可以将链表中值提取出来,使用快速排序排好,在存入链表中。代码:import java.util.*;/* * public class ..原创 2021-03-09 17:26:19 · 172 阅读 · 0 评论 -
算法题1:字符串倒序
字符串倒序时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 256M,其他语言512M题目描述:薯队长带着小红薯参加密室逃脱团建游戏,首先遇到了反转游戏,小红薯们根据游戏提示收集了多个单词线索,并将单词按要求加一个空格组 成了句子,最终要求把句子按单词反转解密。 说明:收集的时候单词前后可能会有多个空格,反转后单词不能有多个空格,具体见输入输出样例。输入描述:输入一个字符串。包含空格和可见字符。长度<=100000。输出描述:输出一个字符串,表示.原创 2021-03-09 16:28:46 · 374 阅读 · 2 评论