0

Input: ABC. Desired Ouput:ABC ACB BAC BCA ACB CBA. The script is not able to produce resired output . What is wrong with my script ?

#!/bin/bash
#set -x
permute(){
     choosen=$1
     s=$2
    #echo $s
    #echo $choosen
     if [[ $s == "" ]]
      then
        echo $choosen
     else
         #echo ${#s}
       for i in `seq 1 ${#s}`
        do
         c=${s:i-1:1}
         choosen="$choosen$c"
         s="${s#$c}"
         permute "$choosen" "$s"
         #c="${choosen:${#choosen}-1:1}"
         #echo "c=$c"
         choosen="${choosen%$c}"
         s="$c$s"
         done
     fi
}
echo "enter the string"
read s
choosen=""
permute "$choosen" "$s"

The output I get is ABC ABC ABCC ABCCC ABCCC ABCCC ABCCC

Vicky
  • 1,298
  • 1
  • 16
  • 33

0 Answers0