【LeetCode】0830.较大分组的位置
生活随笔
收集整理的這篇文章主要介紹了
【LeetCode】0830.较大分组的位置
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目要求
圖解示例
本題其實是一個線性查找問題,依次遍歷字符串中每個字符即可
算法思想
查找類算法
完整代碼
class Solution { public:vector<vector<int> > largeGroupPositions(string s) {vector<vector<int> > ans;vector<int> tmp;int start = 0;int end = 0;int len = 1;for(int i = 1; i < s.size(); i++) {if(s[i]==s[i-1]) {if(len==1) start = i - 1;len++;} else {end = i - 1;if(len >= 3) {tmp.clear();tmp.push_back(start);tmp.push_back(end);ans.push_back(tmp);}len = 1;}}if(len >= 3) {end = s.size() - 1;tmp.clear();tmp.push_back(start);tmp.push_back(end);ans.push_back(tmp);}return ans; } };設計分析
時間復雜度:O(n)
空間復雜度:O(1)
提交結果
若有其他解法,歡迎評論區補充。
總結
以上是生活随笔為你收集整理的【LeetCode】0830.较大分组的位置的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【数据结构-排序】1. 图解插入排序三种
- 下一篇: 【数据结构-排序】3.图解选择排序两种实