两个链表,一升一降。合并为一个升序链表。
1
List merge(List a, List d)
{
2
List a1 = reverse(d);
3
List p = q = new List();
4
while ( a && a1 )
{
5
if (a.value < a1.value)
{
6
p.next = a;
7
a = a.next;
8
} else
{
9
p.next = a1;
10
a1 = a1.next;
11
}
12
p = p.next;
13
}
14
if (a) p.next = a;
15
elseif(a1) p.next = a1;
16
return q.next;
17
}
List merge(List a, List d)
{2
List a1 = reverse(d);3
List p = q = new List();4
while ( a && a1 )
{5
if (a.value < a1.value)
{6
p.next = a;7
a = a.next;8
} else
{9
p.next = a1;10
a1 = a1.next;11
} 12
p = p.next;13
} 14
if (a) p.next = a;15
elseif(a1) p.next = a1;16
return q.next;17
} 不知道这道题朋友们有什么更好的方法?

