Tables with equidistant x-values are often used in embedded systems.
If your present resistance values (x) for your table are not equidistant, use your desktop computer to calculate/interpolate the temperature values (y) for equidistant resistance values.
Then you can use a simple array of temperature values and calculate the index from the resistance.
Example table, assuming you have a resistance range from 80 to 110 and a corresponding temperature range from 0 to 100.
resistance temperature (corresponding table index)
80 0 0
82 1 1
84 2 2
86 4 3
88 7 4
... ...
108 99 29
110 100 30
Then you can use an array like this
int temp_table[] = { 0, 1, 2, 4, 7, /* ... */ 99, 100 };
and calculate the temperature like this:
const int rmin = 80;
const int rmax = 110;
int r; /* assuming this is the measures resistance */
int temp;
int index;
if(r < rmin) {
/* error min */
} else if(r > rmax) {
/* error max */
} else {
/* This calculates the table index for the highest resistance value
from the table not greater than r. Check your resistance range
and factor and divider to make sure you don't get an overflow here. */
index = ( (r - rmin) * (sizeof(temp_table) / sizeof(temp_table[0])) ) / (rmax - rmin);
temp = temp_table(index);
}
If you have less table points, you might want to extend this simple table search with linear (or other) interpolation.