| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Python知识库 -> Python实现邮箱选址问题(初学者的练习) -> 正文阅读 |
|
[Python知识库]Python实现邮箱选址问题(初学者的练习) |
@TOCpython实现邮箱选址问题 在一个按照东西和南北方向划分成规整的星球里, n个阿伟点散乱地分布在不同的星球中。 用x坐标表示东西向,用y坐标表示南北向。 各阿伟点的位置可以由 坐标(x,y)表示。 星球中任意2点(x1,y1)和(x2,y2)之间的距离可以用数值 ∣x1?x2∣+∣y1?y2∣度量。 阿伟们希望在星球中选择建立邮箱的最佳位置,使n个阿伟点到邮箱的距离总和最小。 输入格式: 输出格式: 输入样例: 前言假期参加了学校的一个算法培训,遇到了一个蛮有意思的邮箱选址问题,就试着用python做了一下,不过最后效果肯定没有C/C++实现的效果那么好就对了(是从我这个小白的角度来看的哈,大佬们有其他更好的思路算法实现还请不吝赐教) 一、思路实现1、键盘输入坐标点的个数以及相应的坐标,用python的列表数据结构进行存储; 二、使用步骤1.引入库代码如下:
2.快速排序代码如下:
此处快速排序选择列表第一个数据作为排序基准关键字 3.递归调用快速排序代码如下:
4.求最佳点到各点距离综合代码如下:
5.定义主函数代码如下:
6.最后调用代码如下:(这是我同学写的,找他讨要登上来了)
7.C/C++版本实现代码如下:
8.二者版本的耗费资源对比C/C++版本: 总结其实在这个程序里有几个知识点对我来说是新学,边查边写的,在我的实现过程中起了很大的作用: 另一个则是关于排序算法的实现过程,也查阅了CSDN上另一位博主的总结博客,转载链接 最后,写这个代码的时候查了查同类回答,发现有要求各个点带有权值的问题进阶版,我这里题目没有要求有权值,所以有需求的读者们需要自行改进一下; 感谢你的阅读~ |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 | -2024/12/25 14:25:41- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |
数据统计 |