首页 > 试题广场 >

遍历链表

[编程题]遍历链表
  • 热度指数:13697 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 64M,其他语言128M
  • 算法知识视频讲解
建立一个升序链表并遍历输出。

输入描述:
输入的每个案例中第一行包括1个整数:n(1<=n<=1000),接下来的一行包括n个整数。


输出描述:
可能有多组测试数据,对于每组数据,
将n个整数建立升序链表,之后遍历链表并输出。
示例1

输入

4
3 5 7 9

输出

3 5 7 9
while True:
    try:
        num=int(input())
        list1=input().split()
        print(" ".join(str(n)for n in sorted(list1,key=lambda x:int(x))))
    except:
        break
发表于 2018-05-10 16:11:48 回复(0)

Life is short I use python:

while True:
    try:
        a,b=input(),map(int,input().split())
        print(" ".join(map(str,sorted(b))))

    except:
        break
发表于 2017-10-01 16:45:23 回复(0)
#!/usr/bin/python
# -*- coding: UTF-8
class LNode:
    def __init__(self, elem, next_ = None):
        self.elem = elem
        self.next = next_
    def sort1(self):
        if self is None:
            return
        crt = self.next
        while crt is not None:
            x = crt.elem
            p = self
            while p is not crt and p.elem <= x:
                p = p.next
            while p is not crt:
                y = p.elem
                p.elem = x
                x = y
                p = p.next
            crt.elem = x
            crt = crt.next
n = input()
if n <=1000 and n >=1:
    pass
else:
    n = input('输入数据超过范围,请重新输入:')
#s=sorted(map(int,raw_input().split()))
s=map(int,raw_input().split())
ilist1 = LNode(s[0])
p = ilist1
for i in range(1,n):
    p.next = LNode(s[i])
    p = p.next
p = ilist1
p.sort1()
while p is not None:
    print(p.elem),
    p = p.next

通过率不过关,

发表于 2017-03-21 11:31:33 回复(0)