当前位置: 首页 > news >正文

石家庄市住房和城乡建设局官方网站网站建设都有什么栏目

石家庄市住房和城乡建设局官方网站,网站建设都有什么栏目,天津建设工程信息网密码,如何帮网站读者大大们好呀!!!☀️☀️☀️ 👀期待大大的关注哦❗️❗️❗️ 🚀欢迎收看我的主页文章➡️木道寻的主页 文章目录 🔥前言🚀冒泡排序python实现算法实现图形化算法展示 ⭐️⭐️⭐️总结 🔥前…

读者大大们好呀!!!☀️☀️☀️


请添加图片描述
👀期待大大的关注哦❗️❗️❗️
🚀欢迎收看我的主页文章➡️木道寻的主页

文章目录

  • 🔥前言
  • 🚀冒泡排序python实现
    • 算法实现
    • 图形化算法展示
  • ⭐️⭐️⭐️总结

🔥前言

请添加图片描述
冒泡排序算法的基本思想是通过重复遍历待排序的数列,比较每对相邻元素,如果它们的顺序错误(根据元素排序规则来说)就把它们交换过来。这个过程中,较小的元素会像气泡一样逐渐“浮”到数列的顶端,也就是数列的前端。这个过程会重复进行,直到数列被排序完成

🚀冒泡排序python实现

历史:
关于冒泡排序算法的创造历史,据称在1960年,英国计算机科学家霍尔(Tony Hoare)在参加英国国家物理实验室的俄文机械翻译项目时,为了提高翻译效率而提出了冒泡排序算法。这个算法以其稳定性和简单性而著称,尽管这个说法存在,但没有确凿的实证来支持这一点。

算法实现

1、冒泡排序代码python实现

def bubble_sort(arr):n = len(arr)# 遍历所有数组元素for i in range(n):# Last i elements are already in placefor j in range(0, n-i-1):# 遍历数组从0到n-i-1# 交换如果元素大于下一个元素if arr[j] > arr[j+1]:arr[j], arr[j+1] = arr[j+1], arr[j]

2、运行结果
实验结果

图形化算法展示

1、matplotlib图形化展示

代码如下:

import matplotlib.pyplot as pltdef bubble_sort(arr):n = len(arr)plt.ion()  # 开启交互模式for i in range(n):for j in range(1, n-i):if arr[j-1] > arr[j]:arr[j-1], arr[j] = arr[j], arr[j-1]  # 交换元素plt.clf()  # 清除之前的图形plt.plot(arr, 'ro-')  # 绘制当前数组状态plt.title('Bubble Sort Animation')plt.draw()  # 绘制更新plt.pause(1)  # 暂停一段时间,以便观察# 创建一个待排序的数组
arr = [64, 34, 25, 12, 22, 11, 90]
# arr = []
# num = int(input("请输入需要排序的数字个数:"))
# print("请依次输入需要排序的数字\n")
# for i in range(num):
#     arr.append(int(input(f"第{i+1}个数:")))
# print("原始数组:")
# print(arr)
#
# bubble_sort(arr)
# print("排序后的数组:")
# print(arr)# 原始数组的图形绘制
plt.figure(figsize=(10, 5))
plt.plot(arr, 'ro-', markersize=8)
plt.title('original data')
plt.grid(True)
plt.show()
plt.ioff()# 开始冒泡排序并动态绘制
bubble_sort(arr.copy())  # 使用数组的副本以保留原始数组用于比较# 排序后的数组图形绘制
plt.plot(arr, 'go-', markersize=8)  # 使用绿色表示排序后的数组
plt.title('Sorting raw data')
plt.grid(True)
plt.show()
plt.ioff()  # 关闭图形交互模式

图形显示结果:
请添加图片描述

⭐️⭐️⭐️总结

冒泡排序(Bubble Sort)是一种简单直观的排序算法,它通过重复遍历待排序的数列,比较每对相邻元素的大小,并在必要时交换它们的位置。以下是冒泡排序的几个关键点总结:

1️⃣算法原理:
通过相邻元素的比较和交换,使得每一轮遍历后,数列中的最大(或最小)元素“冒泡”到它应该在的位置。

2️⃣稳定性:
冒泡排序是一种稳定的排序算法,因为它不会改变相同元素之间的相对顺序。

3️⃣时间复杂度:
最好情况(已经是排序状态):O(n),只需要遍历一次就发现没有元素交换,立即结束。
最坏情况(完全逆序):O(n^2),需要进行n-1次遍历。
平均情况:O(n^2)。

4️⃣空间复杂度:
空间复杂度为O(1),因为它是一种原地排序算法,不需要额外的存储空间。
实现方式:

可以使用两次嵌套循环实现,外层循环控制遍历次数,内层循环进行相邻元素的比较和交换。

✈️✈️✈️如果喜欢这篇文章的话

🙏大大们可以动动发财的小手:
👉👉👉 点赞:👍收藏:⭐️评论:✍️👈👈👈

http://www.yayakq.cn/news/568860/

相关文章:

  • 婚礼案例网站有了主机如何做网站
  • 直播网站建设需要什么软件有哪些常德建设企业网站
  • vue.js合作做网站么html5浅蓝色网站设计公司dede模板
  • 做茶叶网站手机触屏网站开发教程
  • 中国空间站机械臂烟台做网站电话
  • 济南比较大的网站制作公司赚钱软件一天赚100元游戏无广告
  • 个人网站有哪些平台开发网站建设用什么框架
  • 做论坛app网站有哪些怎样提升网站关键词
  • 网站第三方登录怎么做深圳网址导航
  • 网站建设专业公司设计公司工作室创业规划
  • 免费广告设计制作网站大学网站建设目标
  • 网店推广有哪些方法无锡做网站seo的
  • 为某网站做网站推广策划方案环保工程网站建设价格
  • 企业网站的建立方法网页浏览器主要通过ftp协议同网页服务器
  • 创建公司网站用什么软件电子商务有限公司有哪些
  • 贵州省住房和城乡建设厅网站-首页金坛建设局招标网站
  • 烟台专业网站建设公司哪家好辽宁建设工程信息网上传标书时显示初始化签名证书选择模式失败
  • 江西做网站多少钱oppo开放平台
  • 查网站是否正规app制作定制外包22
  • 专业网站设计建设外链论坛
  • 绥中做网站公司网站pv uv 多少算好站
  • 太仓企业网站建设公司dw安装免费下载
  • 企业网站建设销售前景单位建立一个官网多少钱
  • 亳州网站建设费用廊坊网站推广外包
  • 宜兴做网站哪家好北京企业模板建站
  • 做专利费减是哪个网站上海风险地区划分最新查询
  • xyz域名注册局官方网站网页设计制作教程:一个页面的完全制作
  • 专业购物网站定制品牌网站开发动态模块
  • 广州专业网站建设报价制作设计图的网页
  • 上海 网站制作空间网站打不开