栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

编程题02——找出与质心最近的点

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

编程题02——找出与质心最近的点

描述:在二维平面上有k(编号为0~k-1)个点,请找出这k个点中离质心最近点的编号。质心,就是指其横坐标,纵坐标分别为k个点的横坐标平均值,纵坐标平均值的点,如果存在到质心距离相同的点,则返回编号小的点的编号

示例:
输入:[“1,1”,“2,2”,“1,2”,“1,3”]

输出:2

def find_clear_point(text):
    x = []    #存放横坐标
    y = []    #存放纵坐标
    for i in range(len(text)):
        #float转换为后面求平均值做准备,逗号分割取第一部分为x,第二部分为y
        x.append(float(text[i].split(',')[0]))  
        y.append(float(text[i].split(',')[1]))
    # 找出质心
    mid_x = sum(x) / len(x)  #总和除个数
    mid_y = sum(y) / len(x)
    # print(mid_x, mid_y)
    distance = []            #存放所有点到质心的距离
    for i in range(len(text)):
        dis = (x[i] - mid_x) ** 2 + (y[i] - mid_y) ** 2    #点到质心的距离平方
        distance.append(dis)          #结果存入distance
    return distance.index(min(distance))   #返回distance数组最小值的下标



参考:不使用numpy找距离质心最小点实例_慧慧想弹琴的博客-CSDN博客

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1001981.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号