Contiguous unique substrings with the given length L

28 Dec, 2021
Given a string str and an integer L. The task is to print all the unique substring of length L from string str.
Examples:
Input: str = “abca”, L=3Output: “abc”, “bca”
Input: str = “aaaa”, L=3Output: “aaa”
Approach:Firstly generate all the substring of length L and then by using set we can insert unique sub-string till the length L and then print the result.
Below is the implementation of the above approach:
C++
Java
Python3
C#
// C++ implementation#include <bits/stdc++.h>using namespace std;  // Function to print the// unique sub-string of length nvoid result(string s, int n){    // set to store the strings    unordered_set<string> st;      for (int i = 0; i < (int)s.size(); i++) {          string ans = "";        for (int j = i; j < (int)s.size(); j++) {              ans += s[j];              // if the size of the string            // is equal to 1 then insert            if (ans.size() == n) {                  // inserting unique                // sub-string of length L                st.insert(ans);                break;            }        }    }      // Printing the set of strings    for (auto it : st)        cout << it << " ";}  // Driver Codeint main(){    string s = "abca";    int n = 3;      // Function calling    result(s, n);    return 0;}
// Java implementation of above approachimport java.util.*;class GFG {  // Function to print the// unique sub-String of length nstatic void result(String s, int n){    // set to store the Strings    HashSet<String> st = new HashSet<String>();      for (int i = 0; i < (int)s.length(); i++)     {        String ans = "";        for (int j = i; j < (int)s.length(); j++)        {            ans += s.charAt(j);              // if the size of the String            // is equal to 1 then insert            if (ans.length()== n)            {                  // inserting unique                // sub-String of length L                st.add(ans);                break;            }        }    }      // Printing the set of Strings    for (String it : st)        System.out.print(it + " ");}  // Driver Codepublic static void main(String[] args){    String s = "abca";    int n = 3;      // Function calling    result(s, n);}}  // This code is contributed by 29AjayKumar
# Python3 implementation of the above approach   # Function to print the # unique sub-string of length n def result(s, n) :       # set to store the strings     st = set();       for i in range(len(s)) :           ans = "";         for j in range(i, len(s)) :              ans += s[j];               # if the size of the string             # is equal to 1 then insert             if (len(ans) == n) :                  # inserting unique                 # sub-string of length L                 st.add(ans);                 break;       # Printing the set of strings     for it in st :        print(it, end = " ");   # Driver Code if __name__ == "__main__" :       s = "abca";     n = 3;       # Function calling     result(s, n);   # This code is contributed by AnkitRai01
// C# implementation for above approachusing System;using System.Collections.Generic;       class GFG {  // Function to print the// unique sub-String of length nstatic void result(String s, int n){    // set to store the Strings    HashSet<String> st = new HashSet<String>();      for (int i = 0; i < s.Length; i++)     {        String ans = "";        for (int j = i; j < s.Length; j++)        {            ans += s[j];              // if the size of the String            // is equal to 1 then insert            if (ans.Length == n)            {                  // inserting unique                // sub-String of length L                st.Add(ans);                break;            }        }    }      // Printing the set of Strings    foreach (String it in st)        Console.Write(it + " ");}  // Driver Codepublic static void Main(String[] args){    String s = "abca";    int n = 3;      // Function calling    result(s, n);}}  // This code is contributed by 29AjayKumar
bca abc

29AjayKumar
ankthon
sumitgumber28
substring
Strings
Strings
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.