Givet en streng str og pos og kun der definerer starten og længden af subarrayet. Opgaven er at generere en understreng af størrelse kun med udgangspunkt i indekset pos .
EN understreng er en sammenhængende sekvens af tegn i en streng.
ssis
Eksempler:
Input: Str =den, pos=1, len=2
Produktion: th
Forklaring: understrenge vil være: , t, h, e, th, han, den.Input: Str =nørder, pos=3, længde=3
Produktion: eks
Forklaring: understrenge er: , g, e, e, k, s, ge, ee, ek, ks, gee, eek, ex, nørd, eeks, nørder.
Nærme sig: Problemet kan løses ved at følge nedenstående idé:
Opret en karakterarray og sæt karaktererne med udgangspunkt i pos til tegnarrayet for at generere understrengen.
Følg nedenstående trin for at implementere ideen:
- Opret et tegnarray for at gemme understrengen.
- Gentag fra den givne position for den givne længde for at generere den nødvendige understreng.
- Gem derefter hvert tegn i tegnarrayet og udskriv understrengen.
Følg nedenstående illustration for en bedre forståelse.
Illustration:
Overvej en streng str=abcde , pos = 2 , kun = 3 .
=> Ved i = 2 vores ans = c .
=> Ved i = 3 er tegnet 'd'.
Så føj 'd' til svaret.
Vores år = cd=> Ved i = 4 er tegnet 'e'.
Så føj 'e' til svaret.
Time og = cde .
Nedenfor er implementeringen af ovenstående tilgang.
C
hvordan man tjekker blokerede numre på Android
zip kommando i linux
// C implementation of code> #include> #include> // Function to get substr in C> void> getString(>int> pos,>int> len,>int> c,>char> string[])> {> >char> substring[1000];> >while> (c substring = string[pos + c - 1]; c++; } substring = ' '; // Print the result printf(substring); printf('
'); return 0; } // Driver code int main() { int pos, len, c = 0; // Testcase1 char string[14] = 'geeksforgeeks'; // Initialize pos, len i.e., starting // index and len upto which we have to // get substring respectively. pos = 6; len = 5; printf('String: %s ', string); printf('
substring is: '); // Function call getString(pos, len, c, string); // Testcase2 char string2[5] = 'abcde'; pos = 1; len = 3; c = 0; printf('
String: %s ', string2); printf('
substring is: '); // Function call getString(pos, len, c, string2); return 0; }> |
>
>Produktion
String: geeksforgeeks substring is: forge String: abcde substring is: abc>
Tidskompleksitet: Om
Hjælpeplads: Om
Brug strncpy() funktion i C
Vi kan også bruge strncpy()-funktionen i C til at kopiere understrengen fra en given inputstreng. Det kræver 3 parametre, som er destinationsstrengen, kildestrengen sammen med startindekset og længden af den understreng, som vi skal kopiere.
t ff
Syntaks:
strncpy(destinationsstreng,inputstreng+pos,len);
Her pos er startindekset og kun er længden af den understreng, som vi vil kopiere.
Nedenfor er koden for ovenstående tilgang.
C
javascript streng udskiftning
// C implementation of code> #include> #include> // Driver code> int> main()> {> >int> pos, len;> >// Testcase1> >char> string[14] =>'geeksforgeeks'>;> >char> substring[14];> >// Initialize pos, len i.e., starting> >// index and len upto which we have to> >// get substring respectively.> >pos = 6;> >len = 5;> >printf>(>'String: %s '>, string);> >printf>(>'
substring is: '>);> >// Using strncpy function to> >// copy the substring> >strncpy>(substring,string+(pos-1),len);> >printf>(substring);> >// Testcase2> >char> string2[5] =>'abcde'>;> >char> substring2[5];> > >pos = 1;> >len = 3;> >printf>(>'
String: %s '>, string2);> >printf>(>'
substring is: '>);> >// Using strncpy function to> >// copy the substring> >strncpy>(substring2,string2+(pos-1),len);> >printf>(substring2);> >return> 0;> }> // This code is contributed by Pushpesh Raj.> |
>
>Produktion
String: geeksforgeeks substring is: forge String: abcde substring is: abc>
Tidskompleksitet: Om
Hjælpeplads: Om