Infosys Interview Question
Developer Program EngineersCountry: India
In PHP I would do something like this:
$a = array('A', 'C', 'D', 'G', 'D', 'E', 'A', 'C', 'A');
$b = array_unique($a);
sort($b); // new keys
foreach($a as $v){
echo $v.'='.(array_search($v, $b)+1).';';
}
echo '<br />';
foreach($a as $v){
$count = array_count_values($a);
echo $v.'='.$count[$v].';';
}
#include<stdio.h>
#include<stdlib.h>
void printChars(char* array, int len) {
int* counts = (int *)malloc(len*sizeof(int));
int i=0;
for(i=0;i<len;i++) {
counts[i] =0;
}
char temp ='A';
for(i=0;i<len;i++) {
counts[(int)(array[i]-temp)]++;
}
for(i=0;i<len;i++) {
if(counts[i] >0) {
printf("%c - %d\n",temp+i,counts[i]);
}
}
}
void main() {
int len=26;
char* arr = (char *)malloc(26);
int i=0;
char temp = 'A';
for(i=0;i<len;i++) {
*(arr+i) = temp+i;
printf("%c",*(arr+i));
}
printChars(arr,len);
printf("%d\n",'A');
}
#include<stdio.h>
#include<stdlib.h>
void printChars(char* array, int len) {
int* counts = (int *)malloc(len*sizeof(int));
int i=0;
for(i=0;i<len;i++) {
counts[i] =0;
}
char temp ='A';
for(i=0;i<len;i++) {
counts[(int)(array[i]-temp)]++;
}
for(i=0;i<len;i++) {
if(counts[i] >0) {
printf("%c - %d\n",temp+i,counts[i]);
}
}
}
void main() {
int len=26;
char* arr = (char *)malloc(26);
int i=0;
char temp = 'A';
for(i=0;i<len;i++) {
*(arr+i) = temp+i;
printf("%c",*(arr+i));
}
printChars(arr,len);
printf("%d\n",'A');
}
- uuuouou January 11, 2014