Wikipedia is normally my fist stop for finding anything, but the mathematical notation is near impossible to decipher.
Maybe I can omit the math with a simple example.
Imagine a set of values "v" over the x axis:
int v[]= { 1, 3, 6, 5, 8,12,11,14 };
int x[]= { 0, 1, 2, 3, 4, 5, 6, 7 };
Let's take an averaging radius of 2 values, so for eg x=3 you'd weight the values 1..5.
The unweighted approach:
average= ( v[1] + v[2] + v[3] + v[4] + v[5] ) / 5;
= ( 3 + 6 + 5 + 8 + 12 ) / 5 = 6.8
The gauss filter calculates a weighted average by taking the distance into account (the bigger the distance, the smaller the weight):
float maximum= 0.4;
float medium= 0.25;
float small= 0.05;
average= v[1]*small + v[2]*medium + v[3]*maximum + v[4]*medium + v[5]*small;
= 6.25
Notice that the sum of all weights is 1.0.
For median cut you'd sort all values in the averaging range and pick the center.
Anomalies are expected to gather at the upper and lower end (so the center element is usually pretty average):
v[1..5]: 3, 6, 5, 8,12
sorted: 3, 5, 6, 8,12
center: 6