http://en.wikipedia.org/wiki/Daubechies_wavelet#Transform.2C_D4
I find it is difficult to understand the pseudo-code on this Wiki page.
N = length(S);
s1 = S(1:2:N-1) + sqrt(3)*S(2:2:N);
d1 = S(2:2:N) - sqrt(3)/4*s1 - (sqrt(3)-2)/4*[s1(N/2); s1(1:N/2-1)];
s2 = s1 - [d1(2:N/2); d1(1)];<<<<<<<<<<<<<<<<<<<<<<<
s = (sqrt(3)-1)/sqrt(2) * s2;
d = (sqrt(3)+1)/sqrt(2) * d1;
I do not understand what does the square-bracket means.
The pseudo code is heavily using Matlab syntax. The square brackets mean concatenation of vectors. In this case you take the vector d1 (which is supposed to be a row vector), extract the second to N/2the entries and put the first entry of d1 below these.