mirror of
https://github.com/autistic-symposium/master-algorithms-py.git
synced 2025-05-23 08:51:31 -04:00
Update and rename str-longest-non-repeating.py to longest_non_repeating.py
This commit is contained in:
parent
e54535ae2b
commit
b9b5d8e21c
1 changed files with 2 additions and 17 deletions
|
@ -1,42 +0,0 @@
|
|||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
# author: bt3gl
|
||||
|
||||
# find the length of the longest substring without repeating characters
|
||||
|
||||
|
||||
def length_longest_substring(s: str) -> int:
|
||||
|
||||
result = ""
|
||||
this_longest_string = ""
|
||||
|
||||
i = 0
|
||||
|
||||
for c in s:
|
||||
|
||||
j = 0
|
||||
|
||||
# this loop breaks if repeated
|
||||
while j < len(this_longest_string):
|
||||
|
||||
if c == this_longest_string[j]:
|
||||
if len(this_longest_string) > len(result):
|
||||
result = this_longest_string
|
||||
this_longest_string = this_longest_string[j+1:]
|
||||
|
||||
j += 1
|
||||
|
||||
# this loop continues creating the string
|
||||
this_longest_string += c
|
||||
|
||||
|
||||
return result, this_longest_string
|
||||
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
s = "abcabcbb"
|
||||
print(length_longest_substring(s))
|
||||
|
||||
s = "dvdf"
|
||||
print(length_longest_substring(s))
|
Loading…
Add table
Add a link
Reference in a new issue