<p>Write a method to compute all permutations of a string whose characters are not necessarily unique. The list of permutations should not have duplicates.</p> <p><strong>Example1:</strong></p> <pre> <strong> Input</strong>: S = "qqe" <strong> Output</strong>: ["eqq","qeq","qqe"] </pre> <p><strong>Example2:</strong></p> <pre> <strong> Input</strong>: S = "ab" <strong> Output</strong>: ["ab", "ba"] </pre> <p><strong>Note:</strong></p> <ol> <li>All characters are English letters.</li> <li><code>1 <= S.length <= 9</code></li> </ol>