Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- template <typename T>
- int cyclischZoeken(const T& s, const vector<T> & v) {
- int l = 0;
- int r = v.size();
- while (l < r-1) {
- int m = l + (r - l) / 2;
- if (v[m] <= v[r - 1]) {
- if (s >= v[m] && s <= v[r - 1]) {
- l = m;
- }
- else {
- r = m;
- }
- }
- else {
- if (s < v[m] && s>=v[l]) {
- r = m;
- }
- else {
- l = m;
- }
- }
- }
- return v[l] == s ? l : v.size();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement