From 58a5558501eb2f0667df12628cf6b9c3ca294e30 Mon Sep 17 00:00:00 2001 From: BrianLusina <1178317-BrianLusina@users.noreply.gitlab.com> Date: Wed, 11 Dec 2024 09:56:40 +0300 Subject: [PATCH] feat(strings): look and say sequence algorithm Adds a new algorithm to handle string processing where the count of each character in a provided string is added to the result of the output along with the character itself. --- pystrings/look_and_say_sequence/README.md | 28 ++++++++++++ pystrings/look_and_say_sequence/__init__.py | 42 ++++++++++++++++++ .../images/fifth_term.png | Bin 0 -> 26775 bytes .../images/first_term.png | Bin 0 -> 17236 bytes .../images/fourth_term.png | Bin 0 -> 23928 bytes .../images/second_term.png | Bin 0 -> 19681 bytes .../images/third_term.png | Bin 0 -> 20302 bytes .../test_look_and_say_sequence.py | 29 ++++++++++++ 8 files changed, 99 insertions(+) create mode 100644 pystrings/look_and_say_sequence/README.md create mode 100644 pystrings/look_and_say_sequence/__init__.py create mode 100644 pystrings/look_and_say_sequence/images/fifth_term.png create mode 100644 pystrings/look_and_say_sequence/images/first_term.png create mode 100644 pystrings/look_and_say_sequence/images/fourth_term.png create mode 100644 pystrings/look_and_say_sequence/images/second_term.png create mode 100644 pystrings/look_and_say_sequence/images/third_term.png create mode 100644 pystrings/look_and_say_sequence/test_look_and_say_sequence.py diff --git a/pystrings/look_and_say_sequence/README.md b/pystrings/look_and_say_sequence/README.md new file mode 100644 index 00000000..5870c2e5 --- /dev/null +++ b/pystrings/look_and_say_sequence/README.md @@ -0,0 +1,28 @@ +# Look-and-Say Sequence + +The first few terms of the sequence are: + +```plain +1, 11, 21, 1211, 111221, 312211, 13112221, 1113213211, ... +``` + +To generate a member of the sequence from the previous member, read off the digits of the previous member and record the +count of the number of digits in groups of the same digit. + +For example, 1 is read off as one 1 which implies that the count of 1 is one. As 1 is read off as “one 1”, the next +sequence will be written as 11 where 1 replaces one. Now 11 is read off as “two 1s” as the count of “1” is two in this term. Hence, the next term in the sequence becomes 21. + +Look at the below images to see how we generate this sequence up to the fifth term: + +![First Term](images/first_term.png) +![Second Term](images/second_term.png) +![Third Term](images/third_term.png) +![Fourth Term](images/fourth_term.png) +![Fifth Term](images/fifth_term.png) + +Now, you can easily guess the sixth term. There you go: + +```plain +111221 is read off as "three 1s, two 2s, then one 1" or 312211. +``` + diff --git a/pystrings/look_and_say_sequence/__init__.py b/pystrings/look_and_say_sequence/__init__.py new file mode 100644 index 00000000..5d4e7726 --- /dev/null +++ b/pystrings/look_and_say_sequence/__init__.py @@ -0,0 +1,42 @@ +from typing import List + + +def look_and_say_sequence(sequence: str) -> str: + """ + Counts the number of occurrences of each character in the provided sequence and returns the count of each character + alongside the character itself as a string in the format `cx`, where c is the count and x is the character. This + retains the sequence order passed in and only includes the counts + + Args: + sequence (str): sequence of characters, e.g. "11" or "121", etc + + Returns: + str: string in the format of count of characters along with the characters themselves, + e.g. if sequence is "1", return will be "11" + + Complexity: + Time: O(n) where n is the number of characters in the provided sequence as the algorithm has to iterate over each + character in the sequence + Space: O(n) where n is the number of characters in the provided sequence. This is because the algorithm uses a list + to store the count of characters and the characters themselves to later join into a string as the result + """ + result: List[str] = [] + i = 0 + + while i < len(sequence): + # count is reset to one to keep track of the current count of the sequence + count = 1 + + while i + 1 < len(sequence) and sequence[i] == sequence[i+1]: + # here we keep track of consecutive similar characters and increase their count if we encounter them. + + i += 1 + count += 1 + + # the string version of the count of the character is added along with the character itself to the resulting + # list + result.append(str(count) + sequence[i]) + # we increment the i variable to move to the next character in the sequence + i += 1 + + return "".join(result) diff --git a/pystrings/look_and_say_sequence/images/fifth_term.png b/pystrings/look_and_say_sequence/images/fifth_term.png new file mode 100644 index 0000000000000000000000000000000000000000..66f7162b7a4276be9923525df75b437d344ae20f GIT binary patch literal 26775 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 LUMM{8`1k(;qDMmM literal 0 HcmV?d00001 diff --git a/pystrings/look_and_say_sequence/images/fourth_term.png b/pystrings/look_and_say_sequence/images/fourth_term.png new file mode 100644 index 0000000000000000000000000000000000000000..6676af715eaafc5956e35afea7157a83811584f3 GIT binary patch literal 23928 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 Mfr&oxyi>%#0c*`1Z~y=R literal 0 HcmV?d00001 diff --git a/pystrings/look_and_say_sequence/images/second_term.png b/pystrings/look_and_say_sequence/images/second_term.png new file mode 100644 index 0000000000000000000000000000000000000000..aee8846a43d7766b13e6da45eb444556e828cf73 GIT binary patch literal 19681 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 XqHWF1gF)=SPm_D9{G{-)Nx=UBcd-!* literal 0 HcmV?d00001 diff --git a/pystrings/look_and_say_sequence/test_look_and_say_sequence.py b/pystrings/look_and_say_sequence/test_look_and_say_sequence.py new file mode 100644 index 00000000..d3a02365 --- /dev/null +++ b/pystrings/look_and_say_sequence/test_look_and_say_sequence.py @@ -0,0 +1,29 @@ +import unittest +from . import look_and_say_sequence + + +class LookAndSaySequenceTestCases(unittest.TestCase): + def test_1(self): + """sequence of 1 should return 11""" + sequence = "1" + expected = "11" + actual = look_and_say_sequence(sequence) + self.assertEqual(expected, actual) + + def test_2(self): + """sequence of 11 should return 21""" + sequence = "11" + expected = "21" + actual = look_and_say_sequence(sequence) + self.assertEqual(expected, actual) + + def test_3(self): + """sequence of 21 should return 1211""" + sequence = "21" + expected = "1211" + actual = look_and_say_sequence(sequence) + self.assertEqual(expected, actual) + + +if __name__ == '__main__': + unittest.main()