O(n) 時間で問題を解決しようとしています。コンテナーの前面とコンテナーの背面に 2 つの前方反復子がある場合、少なくとも表示されないコンテナー内のすべての要素を削除したい <この回数 > 回。たとえば、("john"、"hello"、"one"、"yes"、"hello"、"one") などの文字列のベクトルが与えられ、出現回数が 2 回未満のすべての要素を削除したいとします。最終的なベクトルには、("hello", "one") のみが含まれます。
一般的に O(n) 時間でソートできれば (O(n) 時間で) この結果を達成できると考えていましたが、文字列、int、char、またはその他のものでそれを行うのに苦労しています(一般的に)使用されます。私はこれについて正しく考えていますか、それとも問題を解決するためのより簡単な方法はありますか?