Run Code
|
API
|
Code Wall
|
Misc
|
Feedback
|
Login
|
Theme
|
Privacy
|
Patreon
faster posting list using skip pointers
//gcc 5.4.0 int main() { //skip length =4; int pos1[]={1,2,3,4,5,6,9,11,16,18,22,23,27,34,38,45}; int pos2[]={1,2,5,6,8,12,13,14,18,21,27,34,41,45,55}; int p1=0;int p2=0; while(p1<21&& p2<20) { if(pos1[p1]==pos2[p2]) { int i = pos1[p1]; printf("%d \t",i); p1++; p2++; } else { if (pos1[p1]<pos2[p2]) { if(hasSkip(p1) && pos1[skip(p1)]<pos2[p2]) { while(hasSkip(p1) && pos1[skip(p1)]<pos2[p2]) p1=skip(p1); p1=p1-3; } else p1++; } else if (p1>p2) { if(hasSkip(p2) && pos2[skip(p2)]<pos1[p1]) { while(hasSkip(p2) && pos2[skip(p2)]<pos1[p1]) p2=skip(p2); p2=p2-3; } else p2++; } } } return 0; } int hasSkip(int i) { if(i%4==0) return 0; else return 1; } int skip( int i) { int s=i+4; return s; }
run
|
edit
|
history
|
help
1
1.1 Hello World!
e
A_141212_HistoriaDePunteros
ARREGLO DE VARIABLES DE TIPO STRUCT
segundo avance de la lista enlazada
Float data type.c
Simple Calculator v1.0
B_141202_funcionesString
c4
primeno