Python的列表介绍和冒泡,希尔排序算法例子

本文面向技术新手,介绍了Python中的基本数据类型,重点讲解了列表的特性和用法,并探讨了不可变数据类型。此外,文章还通过冒泡排序和希尔排序的示例,为读者展示了简单的算法应用。
摘要由CSDN通过智能技术生成

首先,对于一个技术萌新来说,对学习一门新的语言来说,充满着未知的压力,但又隐隐的兴奋着..其次,对于初次发博客的萌新我来说,也是亚历山大..

言归正传,最近新接触了Python,对比之前所学,感觉Python不是一般的...简单。。
	Python开发快,语言简洁,没那么多技	巧,
Python的函数强大,是一门解释型语言

所以读起来很清楚容易,很适合我这种学的懵懵懂懂的人学习..

Python的数据类型有:(布尔,字符,数字,元祖)列表,集合,字典和类。 其中()里的数据类型的值不可变。

今天,我就来说说列表和知道的几种算法吧...

列表:列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。

列表的数据项不需要具有相同的类型

创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5 ];
list3 = ["a", "b", "c", "d"];

访问列表中的值: 使用下标索引来访问列表中的值,同样你也可以使用方括号的形式截取字符
#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];

print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]

以上实例输出结果:

list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5

更新列表: 对列表的数据项进行修改或更新,你也可以使用append()方法来添加列表项
!/usr/bin/python

list = ['physics', 'chemistry', 1997, 2000];

print "Value available at index 2 : "
print list[2];
list[2] = 2001;
print "New value available at index 2 : "
print list[2];

以上实例输出结果:

Value available at index 2 :
1997
New value available at index 2 :
2001

删除列表元素: 可以使用 del 语句来删除列表的的元素
#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];

print list1;
del list1[2];
print "After deleting value at index 2 : "
print list1;

以上实例输出结果:

['physics', 'chemistry', 1997, 2000]
After deleting value at index 2 :
['physics', 'chemistry', 2000]
(PS:上面从列表开始的知识来源于菜鸟教程) =。=

插入一个推导例子 @_@
        推导:
la=[1,2,3]
la1=[4,5,6]
rs=[x*y for x in la for y in la1]
rs=[[x,y,x*y] for x in la for y in la1] (显示每个结果的数组)
print(rs)


接下来,上几种算法的案例吧..(虽然我有点儿懵..)


冒泡排序算法例子

定义一个要排序的数组 a=[5,2,7,4,3,8,6,1,9]

定义一个指明已完成排序的指针  point = 1

while point  < len(a) :

取出point指明的数字 temp = a[point]

定义数字插入的位置 index = -1

通过循环判定具体位置

for i in range(point):
     if temp < a[i] :
index = i 
break;
通过判断index是否为-1断定带cherub数字是否需要插入

if index == -1 :
     for i in reversed(range(index,point)) :
a[i+1] = a[i]
     a[index] = temp
ppoint += 1


-------------------------------------------------------------------------------------------------------------------------------------------------------------------

希尔排序算法例子
a=[9,2,7,4,3,8,6,5,1]
point=1
dk=len(a)
while True:
    dk=dk//2
    for n in range(dk):
        point=dk+n
        while point <len(a):
            temp=a[point]
            index=-1
            for i in range(n,point,dk):
                if temp < a[i]:
                    index=i
                    break;
            if index != -1:
                for i in reversed(range(index,point,dk)):
                    a[i+dk]=a[i]
                a[index]=temp
            point +=dk
    if dk ==1:
        break
print(a)

额eeeeeeeeeeeeee,好了,就这些,没了.....让我们一起加油,努力,走上人生巅峰,赢取白富美(或者高富帅偷笑偷笑),哈哈哈哈嗝···谢谢!













评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值