对于一个学校项目,我有一个简单的程序,可以比较 20x20 的照片。我放了 20 张照片,然后我放了第 21 张照片,与现有的 20 张照片进行比较,然后弹出答案,我插入了哪张照片(或者哪张最相似)。问题是,我的老师要我使用最近邻算法,所以我计算每张照片的距离。我让一切正常,但问题是,如果照片太相似,我很难说哪一张更接近我的那一张。例如,我用 2 张不同的照片得到这些距离(嗯,它们几乎是一样的):
0 distance: 1353.07982026191
1 distance: 1353.07982026191
它已经是 15 位数字了,我正在使用double
类型。我读的long double
是一样的。是否有任何“简单”的方法来存储超过 15 位数字并对其进行数学运算?
我用欧几里得距离计算距离 我只需要更精确,否则我可能不会通过这里的限制,我应该和我的老师谈谈我无法比较类似的照片?