1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
wariber [46]
3 years ago
3

Two strings are anagrams if they are permutations of each other. For example, "aaagmnrs" is an anagram of "anagrams". Given an a

rray of strings, remove each string that is an anagram of an earlier string, then return the remaining array in sorted order. For example, given the strings s = ['code', 'doce', 'ecod', 'framer', 'frame'], the strings 'doce' and 'ecod' are both anagrams of 'code' so they are removed from the list. The words 'frame' and 'framer' are not anagrams due to the extra 'r' in 'framer', so they remain. The final list of strings in alphabetical order is ['code', 'frame', 'framer'].

Computers and Technology
1 answer:
Alex3 years ago
4 0

Answer:

Here is the Python program:

def removeAnagram(array):  #method to remove string from array of strings that is anagram of earlier string

   s = set()  #creates a set

   output = []  #creates an output list

   for string in array:  # iterates through each string in array of strings

       if ''.join(sorted(string)) not in s:  #if sorted string of array is not in s

           output.append(string)  #append that string to output list

           s.add(''.join(sorted(string)))  #add that sorted string to s set

   return sorted(output)  #returns output list

   

array = ['code', 'doce', 'ecod', 'framer', 'frame']  #creates a list of words

print(removeAnagram(array))  #calls method to remove each string that is an anagram of earlier string

Explanation:

I will explain the program with an example:

Suppose array = ['code', 'doce', 'ecod', 'framer', 'frame']

Now the for loop works as follows:

At first iteration:

first string of array is 'code'

if ''.join(sorted(string)) not in s: this is an if statement which has two method i.e. join() and sorted(). First each letter of the string i.e. 'code' is sorted in alphabetical order then these separated characters are joined together into a word with join() method. So

sorted(string) becomes:

['c', 'd', 'e', 'o']                                                                                                           and ''.join(sorted(string)) becomes:

cdeo

Now if ''.join(sorted(string)) not in s condition checks if cdeo is not in s set. This is true so the statement:

output.append(string) executes which appends the string to output list. So now output has:

['code']                                                                                                                         Next s.add(''.join(sorted(string))) statement  adds the sorted and joined string of array to s set. So the set has:

{'cdeo'}                                                                                                                        

So at each iteration each word from the array is sorted and joined and then checked if output array contains that word or not. If not then it is added to the output array otherwise not. For example at 2nd iteration the word 'doce' which is anagram of code and it is checked when it is sorted and joined and it becomes cdeo which is already in output array. So this is how the anagram is removed from the array. At the end the output array which returns the remaining array in sorted order is returned by this method. The screenshot of the program along with its output is attached.

You might be interested in
shapes polymorphism Create a set of classes derived from an abstract class Shape, which provides a common interface, for managin
Virty [35]

Answer:

Explanation:

demo.java Shapes 2 Shapes Polymorphism Create a set of classes derived from an abstract class Shape, which provides a common interface, for managing various 2D geometric shapes. In our model, each Java object will represent a shape somewhere in a Cartesian coordinate system. However, note that unlike in Mathematics, the positive y-axis grows down from the origin. Shapes All shapes have the following properties: color, area, perimeter, location, and bounds. Shapes are mutable, for example any shape can be moved.

5 0
2 years ago
Please help me answering this question
Vanyuwa [196]

Answer:

none of them

Explanation:

the resistor is connected to the + pole of the battery, no circuit shows that.

a 1kΩ resistor would be brown-black-red, not brown black black.

8 0
2 years ago
In this problem, we explore some of the properties of the CRC. For the generator G (=1001) given in Section 5.2.3, answer the fo
allochka39001 [22]

Answer:

b

Explanation:

5 0
3 years ago
Write a program whose input is a character and a string, and whose output indicates the number of times the character appears in
Zina [86]

Answer:

Here is the C++ program:

#include <iostream> // to include input output functions

using namespace std; // to identify objects like cin cout

int counter(string userString, char character) { //function counter

   int count = 0;   // counts the no of times a character appears in the string

   for (int i=0;i<userString.length();i++)  

// loop to move through the string to find the occurrence of the character

       if (userString[i] == character) //if characters is found in the string

           count++;   //counts the occurrence of the character in the string

   return count; }   //returns the no of times character occurs in the string

int main() { //start of the main() function body

   string s; // stores the string entered by the user

   cout<<"Enter a string: "; //prompts user to enter the string

   cin>>s; //reads the string from user

   char ch; //stores the character entered by the user

   cout<<"Enter a character: "; //prompts user to enter a character

   cin>>ch; //reads the character from user

   cout << counter(s, ch) << endl; }  

//calls counter function to find the number of times a character occurs in the //string

Explanation:

The counter function works as following:

It has a count variable which stores the number of occurrences of a character in the userString.

It uses a for loop which loops through the entire string.

It has i position variable which starts with the first character of the string and checks if the first character of userString matches with the required character.

If it matches the character then count variable counts the first occurrence of the character and in the userString and is incremented to 1.

If the character does not match with the first character of the userString then the loops keeps traversing through the userString until the end of the userString is reached which is specified by the length() function which returns the length of the string.

After the loop ends the return count statement is used to return the number of occurrences of the character in the userString.

The main() function prompts the user to enter a string and a character. It then calls counter() function passing string s and character ch arguments to it in order to get the number of times ch appears in s.

The output is attached in a screenshot.

6 0
3 years ago
How long does it take to learn python
Alla [95]

Answer:

five to 10 weeks

On average, it can take anywhere from five to 10 weeks to learn the basics of Python programming, including object-oriented programming, basic Python syntax, data types, loops, variables, and functions.

:

3 0
3 years ago
Read 2 more answers
Other questions:
  • Which data type uses more memory an integer or an unsigned integer?
    6·1 answer
  • Software that helps run the computer's hardware devices and coordinates instructions between applications is called
    10·1 answer
  • Write a program that accepts three decimal numbers as input and outputs their sums?​
    5·1 answer
  • What was one of the first inventions that made it possible to communicate almost instantly?
    11·1 answer
  • __________ involves determining what qualities are to beused to perform project activities.
    9·1 answer
  • I have wings, I am able to fly, I‘m not a bird yet I soar high in the sky. What am I?
    14·2 answers
  • If you are logged on to Windows Live Messenger, why would you be unable to engage
    6·1 answer
  • A computer essentially takes input, processes it, and produces output. Which person developed a machine in the mid-1880s that ac
    6·1 answer
  • Means storing,accessing information over the internet other than hard drive and your system
    15·1 answer
  • What does the word collaborative mean?
    13·2 answers
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!