PBLJ 8
PBLJ 8
Experiment 3.1
Student Name: Vikram Kumar Singh UID: 21BCS11831
Branch: BE-CSE Section/Group: CC-625-B
Semester: 6th Date of Performance: 27-03-2024
Subject Name: PBLJ Lab Subject Code: 21CSP-319
1. Aim:
Create a palindrome creator application for making a longest possible
palindrome out of given input string.
2. Objective:
• To learn about concept of HashMap in java.
• To learn about concept of string in java
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
// If frequency is even, add half occurrences to both left and right halves
if (frequency % 2 == 0) {
int halfFrequency = frequency / 2;
leftHalf.append(String.valueOf(ch).repeat(halfFrequency));
rightHalf.insert(0, String.valueOf(ch).repeat(halfFrequency));
} else {
// If frequency is odd, add one occurrence to the middle and the rest to both halves
middleChar = ch;
int halfFrequency = (frequency - 1) / 2;
leftHalf.append(String.valueOf(ch).repeat(halfFrequency));
rightHalf.insert(0, String.valueOf(ch).repeat(halfFrequency));
}
}
// Combine left half, middle character (if any), and right half
StringBuilder palindrome = new StringBuilder(leftHalf);
if (middleChar != '\0') {
palindrome.append(middleChar);
}
palindrome.append(rightHalf);
return palindrome.toString();
}
}
Output: