subset_generation (#326)

* subset_generation

generate all possible subset of size n of a given array of size r

* Rename subset_generation to subset_generation.py

* Update subset_generation.py

I made all changes I could  . What I mean is I removed all the empty space ....... 
There some comment extra if you feel removing those comments please do so yourself pls provide spacing as it should be

* Create morse_Code_implementation.py

* Any more changes pls let me know
This commit is contained in:
Ambuj81 2019-05-26 22:07:40 +05:30 committed by Anup Kumar Panwar
parent 974088d872
commit 7f4f565e62
2 changed files with 121 additions and 0 deletions

View File

@ -0,0 +1,82 @@
# Python program to implement Morse Code Translator
# Dictionary representing the morse code chart
MORSE_CODE_DICT = { 'A':'.-', 'B':'-...',
'C':'-.-.', 'D':'-..', 'E':'.',
'F':'..-.', 'G':'--.', 'H':'....',
'I':'..', 'J':'.---', 'K':'-.-',
'L':'.-..', 'M':'--', 'N':'-.',
'O':'---', 'P':'.--.', 'Q':'--.-',
'R':'.-.', 'S':'...', 'T':'-',
'U':'..-', 'V':'...-', 'W':'.--',
'X':'-..-', 'Y':'-.--', 'Z':'--..',
'1':'.----', '2':'..---', '3':'...--',
'4':'....-', '5':'.....', '6':'-....',
'7':'--...', '8':'---..', '9':'----.',
'0':'-----', ', ':'--..--', '.':'.-.-.-',
'?':'..--..', '/':'-..-.', '-':'-....-',
'(':'-.--.', ')':'-.--.-'}
def encrypt(message):
cipher = ''
for letter in message:
if letter != ' ':
cipher += MORSE_CODE_DICT[letter] + ' '
else:
cipher += ' '
return cipher
def decrypt(message):
message += ' '
decipher = ''
citext = ''
for letter in message:
if (letter != ' '):
i = 0
citext += letter
else:
i += 1
if i == 2 :
decipher += ' '
else:
decipher += list(MORSE_CODE_DICT.keys())[list(MORSE_CODE_DICT
.values()).index(citext)]
citext = ''
return decipher
def main():
message = "Morse code here"
result = encrypt(message.upper())
print (result)
message = result
result = decrypt(message)
print (result)
if __name__ == '__main__':
main()

View File

@ -0,0 +1,39 @@
# python program to print all subset combination of n element in given set of r element .
#arr[] ---> Input Array
#data[] ---> Temporary array to store current combination
# start & end ---> Staring and Ending indexes in arr[]
# index ---> Current index in data[]
#r ---> Size of a combination to be printed
def combinationUtil(arr,n,r,index,data,i):
#Current combination is ready to be printed,
# print it
if(index == r):
for j in range(r):
print(data[j],end =" ")
print(" ")
return
# When no more elements are there to put in data[]
if(i >= n):
return
#current is included, put next at next
# location
data[index] = arr[i]
combinationUtil(arr,n,r,index+1,data,i+1)
# current is excluded, replace it with
# next (Note that i+1 is passed, but
# index is not changed)
combinationUtil(arr,n,r,index,data,i+1)
# The main function that prints all combinations
#of size r in arr[] of size n. This function
#mainly uses combinationUtil()
def printcombination(arr,n,r):
# A temporary array to store all combination
# one by one
data = [0]*r
#Print all combination using temprary
#array 'data[]'
combinationUtil(arr,n,r,0,data,0)
# Driver function to check for above function
arr = [10,20,30,40,50]
printcombination(arr,len(arr),3)
#This code is contributed by Ambuj sahu