python --- 倒序输出数组中重复的数字
Posted cookietxt
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python --- 倒序输出数组中重复的数字相关的知识,希望对你有一定的参考价值。
#coding=utf8
输出数组中重复的数字
#1.对比判断是否存在重复的数字,是则加入k;2.判断要加入的数字在k是否已存在,若已存在则跳过
def sum(L):
for i in range(len(L)):
for j in range(i+1,len(L)):
if L[i] in k:
break
elif L[i]==L[j]:
k.append(L[i])
break
return k
倒序输出函数,简单的步长为-1, 即字符串的翻转(常用)
def reverse(L):
for i in L[::-1]:
j.append(i)
return j
k=[]
j=[]
L = [1,2,33,45,6,2,33,4,4,5,33,6,4]
print sum(L)
print reverse(k)
倒序输出数组中不重复的数字
k=[]
L=[12,3,33,33,4,2,4,3]
for i in set(L):
k.append(i)
k.reverse()
print k
倒序
方法一:通过递归实现
递归必须有终止条件
#递归的方式, 每次输出一个字符;
#coding=utf8
#1.进栈a,b,c,d,e,f 2.当只剩最后一个字母时,返回f 3.接着依次退出e,d,c,b,a
L=‘abcdef‘
def reverse(L):
if len(L)==1:
return L
else:
return reverse(L[1:])+L[0]
print reverse(L)
方法二:通过range()实现倒序
#简单的步长为-1, 使用for循环, 从右至左输出;
#range(start, end, step)
L=‘abcdef‘
for i in range(len(L)-1,-1,-1): #从下标5开始到0,每次减1
print L[i]
方法三:通过交换前后字母的位置实现倒序
s=‘abcdef‘
t=list(s)
l=len(s)
def reverse(s):
#下标5.4.3和0.1.2的数进行交换
for i,j in zip(range(l-1,0,-1),range(l/2)):
t[i],t[j] = t[j],t[i]
return ‘‘.join(t)
print reverse(s)
以上是关于python --- 倒序输出数组中重复的数字的主要内容,如果未能解决你的问题,请参考以下文章