From ed57f3becd134a3eec31dedaf2726aa13c19b6d0 Mon Sep 17 00:00:00 2001 From: Abhijit2505 Date: Thu, 27 Aug 2020 19:02:23 +0530 Subject: [PATCH] Changed the dist folders --- build/lib/edualgo/algorithm.py | 106 +++++++++++++++++++++++++++++++++ eduAlgo.egg-info/PKG-INFO | 2 +- 2 files changed, 107 insertions(+), 1 deletion(-) diff --git a/build/lib/edualgo/algorithm.py b/build/lib/edualgo/algorithm.py index 6bba3d1..be3f2c7 100644 --- a/build/lib/edualgo/algorithm.py +++ b/build/lib/edualgo/algorithm.py @@ -36,3 +36,109 @@ def selection_sort(self,arr): end = time.time() print("Selection Sort Runtime = {}".format(end-start)) return arr + +class string_algorithms: + + def isUnique(self,input_string): + mapp = [] + for i in input_string: + if i not in mapp: + mapp.append(i) + return len(mapp) == len(input_string) + + def isPermutation(self,input1,input2): + mapp1 = [] + mapp2 = [] + for i in input1: + if i not in mapp1: + mapp1.append(i) + for j in input2: + if j not in mapp2: + mapp2.append(j) + mapp1.sort() + mapp2.sort() + return mapp1==mapp2 + + def URLify(self,input_str,key): + input2 = "" + for i in range(len(input_str)): + if(input_str[i] != ' '): + input2+=input_str[i] + elif((input_str[i]==' ') and (input_str[i+1] == ' ')): + return input2 + elif((input_str[i]==' ') and (input_str[i+1] != ' ')): + input2 += key + return input2 + + def isPalindromicPermutation(self,input1): + mapp = {} + for i in range(len(input1)): + key = input1[i] + if(key in mapp.keys()): + mapp[key] += 1 + else: + mapp.update({key:1}) + flag = 0 + for i in mapp.keys(): + if(mapp[i] %2 == 1): + flag+=1 + return flag<=1 + + def oneEditAwayInsert(self,input1,input2): + index1 = 0 + index2 = 0 + while((index2 < len(input2)) and (index1 < len(input1))): + if(input1[index1] != input2[index2]): + if(index1 != index2): + return False + index2+=1 + else: + index1+=1 + index2+=1 + return True + + def oneEditAwayReplace(self,input1,input2): + flag = False + for i in range(len(input1)): + if(input2[i]!=input1[i]): + if(flag): + return False + flag = True + return True + + def oneEditAway(self,input1,input2): + if(len(input1)==len(input2)): + return self.oneEditAwayReplace(input1,input2) + elif(len(input1)+1==len(input2)): + return self.oneEditAwayInsert(input1,input2) + elif(len(input1)-1==len(input2)): + return self.oneEditAwayInsert(input2,input1) + return False + + def compressedString(self,input1): + mapp = {} + output = "" + for i in range(len(input1)): + key = input1[i] + if(key in mapp.keys()): + mapp[key]+=1 + else: + mapp.update({key:1}) + for key in mapp.keys(): + output = output + key + str(mapp[key]) + if(len(output) <= len(input1)): + return output + else: + return input1 + + def rotateImage(self,img_arr,n): + for layer in range(int(n/2)): + first = layer + last = n-1-layer + for i in range(first,last): + offset = i - first + top = img_arr[first][i] + img_arr[first][i] = img_arr[last - offset][first] + img_arr[last - offset][first] = img_arr[last][last - offset] + img_arr[last][last - offset] = img_arr[i][last] + img_arr[i][last] = top diff --git a/eduAlgo.egg-info/PKG-INFO b/eduAlgo.egg-info/PKG-INFO index 2e69108..1dd2f08 100644 --- a/eduAlgo.egg-info/PKG-INFO +++ b/eduAlgo.egg-info/PKG-INFO @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: eduAlgo -Version: 1.1.4 +Version: 1.1.5 Summary: An educational Algorithmic Library Home-page: https://github.com/Abhijit2505/eduAlgo Author: Abhijit Tripathy