New execution of listpermutations, Computer Engineering

Assignment Help:

Update the permutation algorithm from the text to obtainthe correct list of permutations even if the string haves repeated letters. For example, if you call ListPermutations on the string "AABB", your program should not generate as many permutations as it does for the string "ABCD" because some of the strings generated by the standard algorithm would be indistinguishable from others. Your program should instead obtain the following six:

AABB

ABAB

ABBA

BAAB

BABA

BBAA

Write a new execution of ListPermutations that works correctly even if the string contains duplicated letters. In writing this execution, you should not merely keep a list of permutations that have already be encountered and avoid generating duplicates. Instead, you should think carefully about the recursive structure of the problem and find a way to avoid generating the duplicates in the first place. You may suppose the string haves only upper case letters from A to Z.

 


Related Discussions:- New execution of listpermutations

Adaptive mechanism in Ais, pls give the list of adaptive mechanism in arti...

pls give the list of adaptive mechanism in artificial immune system

Information system and information technology, (a) Explain the following te...

(a) Explain the following terms: Information System and Information Technology. (b) Describe the main components of a computer. Illustrate your answer by a block diagram. (c)

Emails, Compare and contrast POP e-mail to Web-based e-mail systems in term...

Compare and contrast POP e-mail to Web-based e-mail systems in terms of control, security, and accessibility.

What is uml architecture, Takes care structural and behavioural aspect of a...

Takes care structural and behavioural aspect of a software system. Contains software usage, functionality, performance, economic, reuse, and technology constraints.

What is program controlled i/o, What is program controlled I/O? In prog...

What is program controlled I/O? In program controlled I/O the processor repeatedly checks a status flag to achieve the needed synchronization among the processor and an input a

Define local area network, LAN is a privately - owned computer networks con...

LAN is a privately - owned computer networks confined to small geographical area, like a factory or an office widely used to connect office PCs to share resources and information.

What is the working set of a process, What is the working set of a process?...

What is the working set of a process? The set of pages that are referred by the method in the last "n", references, where "n" is called the window of the working set of the pro

What is trivial file transfer protocol, What is trivial file transfer proto...

What is trivial file transfer protocol? Explain briefly? Trivial File Transfer Protocol (i.e. TFTP) is helpful for bootstrapping a hardware device which does not have a disk on

Define checkbox in html, Q. Define Checkbox in html? Checkboxes are use...

Q. Define Checkbox in html? Checkboxes are used when one or more out of the group of options is to be chosen. Building Check boxes is very similar to radio buttons. Figure expl

Staircase, What is the aim of a stair case light is controlled by two switc...

What is the aim of a stair case light is controlled by two switches one at the top of the stairs and another at the bottom of the stair

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd