一:论语
保留自己的态度,尊重别人的看法,不强迫别人按照自己的意愿做事。
二:题目
三:上码
class Solution {
public:vector<int> partitionLabels(string s) {/**思路:1.在这里我们选取的数据结构是map容器,我们只要下记录每个字母所对应的下标然后map会记录下每个字母的的最终下标,当我们遍历字符串的时候,遇见该字符对应的下标就是该字符对应的最大下标的时候,我们就可以判断出这前面是一段字符串的结尾部分(因为后序字符串中没有该段字符串中的字符了) */vector<int> ans;unordered_map<char,int>m;//记录每个字符的最终下标,利用的map的自动去重功能实现更新int start = 0;int end = 0;for(int i = 0; i < s.size(); i++) {m[s[i]] = i;}for(int i = 0; i < s.size(); i++) {end = max(end,m[s[i]]);if(i == end) {ans.push_back(end-start+1);//从下标0开始所以要加上一start=i+1;}} return ans;}
};