首页 > 编程知识 正文

Python学习Day14内容总结

时间:2023-11-19 08:31:34 阅读:297352 作者:YEFG

Python学习Day14主要涵盖了数据结构和算法相关的内容。在本篇文章中,我们将从多个方面对这些内容进行详细的阐述。

一、线性数据结构

1、列表(List)

list1 = [1, 2, 3, 4, 5]
print(list1)

list2 = ['a', 'b', 'c', 'd', 'e']
print(list2)

list3 = [1, 'a', 2, 'b', 3, 'c']
print(list3)

列表是Python中最常用的数据结构之一,它可以存储任意类型的数据。我们可以使用中括号来创建列表,也可以使用list()函数来创建。列表的元素可以通过索引进行访问和修改,还可以进行切片操作。

2、元组(Tuple)

tuple1 = (1, 2, 3, 4, 5)
print(tuple1)

tuple2 = ('a', 'b', 'c', 'd', 'e')
print(tuple2)

tuple3 = (1, 'a', 2, 'b', 3, 'c')
print(tuple3)

元组与列表类似,也可以存储任意类型的数据,不同之处在于元组是不可变的,即在创建之后就不能修改。元组的元素可以通过索引进行访问,但不能进行修改。

二、树形数据结构

1、字典(Dictionary)

dict1 = {'name': 'Tom', 'age': 18, 'gender': 'male'}
print(dict1)

dict2 = dict(name='Jerry', age=20, gender='female')
print(dict2)

字典是以键值对的形式存储数据的数据结构。字典的键必须是不可变的,可以是字符串、数字或元组,而值可以是任意类型的数据。使用花括号或dict()函数可以创建字典,使用键来访问和修改字典的元素。

2、集合(Set)

set1 = {1, 2, 3, 4, 5}
print(set1)

set2 = set(['a', 'b', 'c', 'd', 'e'])
print(set2)

集合是一种无序且不重复的数据结构。集合的元素可以是任意类型的数据,使用花括号或set()函数可以创建集合。集合可以进行集合运算,如并集、交集等。

三、算法

1、递归算法

def factorial(n):
    if n == 1:
        return 1
    else:
        return n * factorial(n - 1)

result = factorial(5)
print(result)

递归是一种在函数定义中使用函数自身的方法。递归算法通常具有简洁的代码和清晰的逻辑,但也容易造成性能上的问题。递归函数必须具有终止条件,以避免无限递归。

2、排序算法

def bubbleSort(nums):
    n = len(nums)
    for i in range(n):
        for j in range(0, n - i - 1):
            if nums[j] > nums[j + 1]:
                nums[j], nums[j + 1] = nums[j + 1], nums[j]

nums = [5, 2, 7, 1, 9]
bubbleSort(nums)
print(nums)

排序算法是对一组数据进行排序的算法。冒泡排序是一种简单的排序算法,它通过比较相邻的元素并交换顺序来进行排序。冒泡排序的时间复杂度为O(n^2)。

四、总结

通过本篇文章的学习,我们详细了解了Python中的数据结构和算法相关的内容。线性数据结构包括列表和元组,树形数据结构包括字典和集合。算法方面,我们学习了递归算法和排序算法。这些知识对于我们编写高效、优雅的Python程序非常重要。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。