I have an array a = [6 8 2 1 9] and b = [1 2 6]. I want a function which returns 2 since a(2)=8 which is the smallest element of a not in b. 

What I have tried so far: 

```
[A,I] = sort(a); 
index = I(find(~ismember(A,b),1))

```

I would like something faster as this piece of code has to run many times and the arrays involved are very large.

Thanks in advance!