How to remove odd frequency characters from a string in Scala

1 Answer

0 votes
import scala.collection.mutable

object Main {
  def removeOddFrequencyCharacters(s: String): String = {
    val frequencyMap = mutable.HashMap[Char, Int]()
    val chArray = s.toCharArray

    // Count the frequency of each character
    for (ch <- chArray) {
      frequencyMap(ch) = frequencyMap.getOrElse(ch, 0) + 1
    }

    // Build the result string excluding characters with odd frequencies
    val result = new StringBuilder
    for (ch <- chArray) {
      if (frequencyMap(ch) % 2 == 0) {
        result.append(ch)
      }
    }

    result.toString()
  }

  def main(args: Array[String]): Unit = {
    var s = "scala programming version 3.3.4"

    s = removeOddFrequencyCharacters(s)

    println(s)
  }
}



/*
run:
  
sogmmingsion3.3.

*/

 



answered Nov 20, 2024 by avibootz
edited Nov 20, 2024 by avibootz

Related questions

1 answer 114 views
1 answer 108 views
1 answer 116 views
1 answer 94 views
1 answer 99 views
1 answer 89 views
...