草庐IT

algorithm

全部标签

android - Android 中带有字符串参数的 shamsi/Jalali 日历

我正在使用此算法将日历日期更改为波斯日历。here它工作正常但是:当我想创建一个新的构造函数来获取参数并将字符串更改为波斯语日期时,比如将"2012/3/6"更改为波斯语(而不是使用内部日期)我有一个非常奇怪的问题和安装不匹配点。所以当期望1392/9/4时,算法显示1392/8/4。importjava.text.SimpleDateFormat;importjava.util.Date;importjava.util.Locale;importandroid.net.ParseException;importandroid.util.Log;publicclassShamsiCal

java - 从 HashMap 中排除索引

我正在尝试实现执行以下操作的算法:如果存储在变量compHand中的数字存在,它的索引将存储在indexArray中,该索引将被添加到banIndex()方法,这样,该索引将永远不会被再次考虑进行进一步的操作。或如果列表中任意两个数字的和等于compHand,则这些数字的索引将存储在indexArray中,并将添加到banIndex()这样,它们将永远不会被考虑进行任何进一步的操作。其实这个算法没问题,但是总是如果hashMap的最后一个value是10,那么,10会显示两次?它应该只显示一次。为什么?例如:该算法根据populateHash()的结果将是:5,6,7,7它应该是:5,

android - 如何生成 5x5 数独谜题?

我编写了生成5x5数独谜题的算法。下面是它的工作原理。在我的5x5数独游戏中,只有两个限制条件。每行和每列只能有一种项目。生成随机位置(0,4)如果位置已满,则返回1。生成随机数(1,5)如果行或列中已经有这个数字,则返回3。用数字填充位置如果还有空闲位置,则返回1。删除随机数。主要有两个问题。此算法会产生死锁,因此我会检查尝试次数,如果尝试次数超过10次,我会重置所有内容并重试。太慢了。由于我正在为移动设备设计我的数独游戏,因此我需要对其进行优化。在我的Nexus5上最多需要五秒钟,在旧的三星GalaxyTrend上最多需要两分钟。 最佳答案

求解第二大元素——锦标赛算法(Tournament Algorithm)

问题给定一个长度为的数组,请用比较次数小于的算法求出数组中的第二大元素。求解看到题目中的比较次数小于就知道不能先用一次循环找出最大元素,接着利用最大元素再一次循环找到第二大元素。那么,应该怎么解决呢。这时就需要用到我们的锦标赛算法(TournamentAlgorithm)了。该算法的主要思想就是让长度为的数组中的元素两两一组,一共分成组,每一轮都是这样分;每一轮都将两两比较中较大的留下来,较小的就直接丢弃;因此每轮过后元素都会少一半;经过后留下一个数,那个数就是最大的数;那么怎么寻找第二大的数呢?我们发现,在淘汰的过程中,最大的数肯定和第二大的数见过面(也就是比较过)。因此,我们只需在淘汰的过

java - Android 游戏开发(编程/算法)问题

我有一堆向上移动的物体(气球),撞到屋顶(即object.yPos我还必须移除那些在支撑anchor被击中并移除后仍然悬挂的气球,即它们不再连接到屋顶或任何其他球上。与此相关,我的气球对象中有以下支持方法:balloon.getAdjacentList()->返回附加到气球的所有气球的ArrayListballoon.getX()->返回气球的X位置balloon.getY()->返回气球的YPos我能想到的检测“悬在空中”气球的一种方法是使用DFS或BFS的“图形遍历”,其中起点是被击中(和移除)的球的所有相邻球,目的地是是...如果任何相邻的球(或“相邻的相邻”球或“相邻的相邻的相

Android SensorManager.java getOrientation 和 getRotationMatrix 算法

我想弄清楚getRotationMatrix()和getOrientation()是如何工作的。到目前为止,我已经知道在getRotationMatrix()函数中,它将重力矢量与磁矢量进行叉积以获得指向东方的新矢量。然后,它再次将东矢量与重力矢量进行叉积,以获得指向磁北的矢量。根据这个article说,现在我们有了三个正交向量,我们可以组成一个旋转矩阵。这是我的第一个问题:为什么我们应该再次将东矢量与重力矢量进行叉积以获得指向磁北的矢量?原来的磁矢量不是指向磁北吗?新矢量和原来的磁矢量有什么区别?关于getOrientation(),这是我的第二个问题:方位角、横滚和俯仰角是如何得出

java - 在寻找最近的位置时,我怎样才能比蛮力做得更好?

我有以下代码:publicstaticLocationfindClosest(LocationmyPosition,ArrayListspots){doublemin=Double.MAX_VALUE;Locationcloser=null;for(MyPositionaPosition:spots){floatdist=Math.abs(aPosition.distanceTo(myPosition));if(dist这是一种蛮力O(N^2)方法,因为这是从以下函数调用的:publicstaticLocationfindClosest(LocationmyPosition,Array

Git错误解决:如何处理“could not determine hash algorithm“问题

🌷🍁博主猫头虎(🐅🐾)带您GotoNewWorld✨🍁🦄博客首页——🐅🐾猫头虎的博客🎐🐳《面试题大全专栏》🦕文章图文并茂🦖生动形象🐅简单易学!欢迎大家来踩踩~🌺🌊《IDEA开发秘籍专栏》🐾学会IDEA常用操作,工作效率翻倍~💐🌊《100天精通Golang(基础入门篇)》🐅学会Golang语言,畅玩云原生,走遍大小厂~💐🪁🍁希望本文能够给您带来一定的帮助🌸文章粗浅,敬请批评指正!🐅🐾🍁🐥文章目录Git错误解决:如何处理"couldnotdeterminehashalgorithm"问题引言正文1.错误的原因2.解决方法2.1检查URL是否正确2.2检查Git版本2.3尝试克隆仓库2.4检查远程仓

【论文阅读】Multi-AUV Collaborative Data Collection Algorithm Based on Q-Learning in Underwater Acoustic S

文章目录论文基本信息摘要1.引言2.相关工作A.基于聚类算法的数据采集算法B.基于AUV轨迹规划的数据采集算法3.网络和通信模型A.网络模型B.问题描述C.通信模式4.THEQL-DGAALGORITHMA.OverviewoftheQL-DGAB.NodeClusteringPhaseC.AUVTaskAllocationD.AUVPathPlanning5.仿真和性能分析A.仿真参数B.结果与分析6.总结补充论文基本信息《Multi-AUVCollaborativeDataCollectionAlgorithmBasedonQ-LearninginUnderwaterAcousticSen

人工蜂群算法(Artificial Bee Colony Algorithm,ABC)

1.人工蜂群算法介绍人工蜂群算法是模仿蜜蜂群体觅食行为提出的一种优化方法,是集群智能思想的一个具体应用,它的主要特点是不需要了解问题的特殊信息,只需要对问题进行优劣的比较,通过各人工蜂个体的局部寻优行为,最终在群体中使全局最优值突现出来,有着较快的收敛速度。为了解决多变量函数优化问题,Karaboga提出了人工蜂群算法ABC模型(artificialbeecolonyalgorithm)。1.1特点参数对算法的性能影响较大;容易陷入局部最优;所以在改进的ABC算法过程中,参数应该随着蜂群迭代过程进行自适应调节。1.1基本组成食物源(蜜源):问题的可行解,蜜源的优劣用蜜量的大小(即适应度函数)引