#include <stdio.h>
#include <ctype.h>
/* this code is not pretty, nor does it have to be */
/* run as:
bigrams < database | sort -n -r | head -128
will give the 128 most used bigrams in the db. then edit comp.h
*/
int main (int argc, char **argv)
{
int counts[256][256];
int last;
int c;
for (c = 0; c < 255; c++)
for (last = 0; last < 255; last++)
if (!isprint (c) || !isprint (last))
counts[c][last] = -1;
else
counts[c][last] = 0;
while (1) {
c = getchar ();
if (feof (stdin))
break;
if (last == -1 || c == '\n') {
if (c != '\n')
last = c;
continue;
}
if (counts[last][c] != -1)
counts[last][c]++;
last = c;
}
for (c = 0; c < 255; c++)
for (last = 0; last < 255; last++)
if (counts[c][last] > 0)
printf ("%d \"%c%c\"\n", counts[c][last], c, last);
return 0;
}