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

网站开发职业生涯规划范文wordpress无法修改主题

网站开发职业生涯规划范文,wordpress无法修改主题,淘宝建设网站的,青岛seo关键词排名在编程竞赛#xff0c;尤其是参与蓝桥杯的过程中#xff0c;遇到各种问题需求是家常便饭。最近#xff0c;我遇到了一个非常有趣且颇具挑战性的算法问题。问题描述如下#xff1a;对于一个长度为n的数组#xff08;n是10的倍数#xff09;#xff0c;数组中的每个元素均…在编程竞赛尤其是参与蓝桥杯的过程中遇到各种问题需求是家常便饭。最近我遇到了一个非常有趣且颇具挑战性的算法问题。问题描述如下对于一个长度为n的数组n是10的倍数数组中的每个元素均为区间内的整数。任务是通过对数组中的元素进行调整使得每个元素出现的次数都相同即每种数各出现n/10次同时需要保证调整的总代价最小。 在初始阶段我差点就被这个问题难住了。问题本身看似简单——让每种数字出现频率相等但实际要找到最小代价的实现却需要深思熟虑的策略。毕竟单纯的试错代价过于巨大我们必须要有明确的方向性。 算法思路如下 首先需要对数组中的每个数字进行计数明确各数字出现的次数。其次要明确每次更改操作的代价。这意味着我们需要为数组中的每个元素ai记录一个更改代价bi。然后考虑如何以最小代价达到目标状态。由于频率超出或低于目标频率n/10的元素都需要调整因此我们需要采取一个有效策略以保证在必要时优先调整代价最小的元素。 解决方案 我采用了贪心算法来逐渐接近目标状态。贪心算法在多种情况下都极为有效尤其是在需要进行多步决策的问题中我们可以在每一步选择当前最优的解决方案。 为了实现这个策略我创建了一个按照bi排序的元素列表来保证在调整过程中我们总是优先选择调整代价较低的元素。通过不断的选择最小代价的元素进行调整我得以逐步使每个数字的出现次数向目标值n/10靠近直至达成平衡。 在编程实践中我遇到了一些边缘情况比如当多个数字的出现次数都超出或低于目标频率n/10时选择哪一个调整就变得更为微妙我不得不在算法中添加额外的逻辑来处理这些情况。 在无数次的调试、优化后我的算法成功通过了所有测试用例并且在实际比赛中取得了不错的成绩。这个问题不仅提升了我的算法设计能力更重要的是教会了我在面对挑战时不断探索和实践的重要性。 import java.util.*;public class BalanceArray {static class Pair {int num;int cost;Pair(int num, int cost) {this.num num;this.cost cost;}}public static int minCostToBalance(int[] nums, int[] costs) {int n nums.length;int target n / 10;int totalCost 0;int[] frequency new int[10];ListPair pairs new ArrayList();// 统计每个数字的出现频率并创建代价数组for (int i 0; i n; i) {frequency[nums[i]];pairs.add(new Pair(nums[i], costs[i]));}// 按照代价进行排序pairs.sort(Comparator.comparingInt(pair - pair.cost));// 调整频率高于和低于目标的数使得频率达到平衡for (int i 0; i pairs.size(); i) {Pair p pairs.get(i);while (frequency[p.num] target) {frequency[p.num]--;totalCost p.cost;}}// 若有数频率仍然过低需要从已降低数的集合中选择最小代价和进行调整for (int i 0; i pairs.size(); i) {Pair p pairs.get(i);while (frequency[p.num] target) {frequency[p.num];totalCost p.cost;}}return totalCost;}public static void main(String[] args) {Scanner scanner new Scanner(System.in);int n scanner.nextInt();int[] nums new int[n];int[] costs new int[n];for (int i 0; i n; i) {nums[i] scanner.nextInt();costs[i] scanner.nextInt();}scanner.close();int result minCostToBalance(nums, costs);System.out.println(result);} } 总结我的学习经历关键在于理解了算法不仅是编程的一项基本技能更是一种可应用于各类问题解决的工具。勇于尝试、耐心思考和有效调整是走向成功的重要步骤。 随着时间的推进我对算法的理解将会更加深入而我相信在这个过程中我不仅会成为一个更出色的程序员也将不断增强解决实际问题的能力。在未来的编程之路上我期待遇到更多的挑战而这个问题无疑已经为我铺设了一段坚实的基石。
http://www.hkea.cn/news/14469718/

相关文章:

  • 广告 网站宝安中心医院怎么样
  • 网站建设维护是做什么会计科目有哪些可以做外链的网站
  • .net个人网站开发视频重庆哪家制作网站好
  • 建设银行的官方网站纪念币跨境电商流程
  • 专门帮做ppt的网站广州手机网站建设联系电话
  • 竞价单页网站模板销售管理系统包括哪几大模块
  • 网络营销网站建设案例wordpress查询数据库插件
  • 网站开发外包 验收深圳提供网站建设服务平台
  • 门户网站个人可以做吗wordpress删除自定义分类
  • 电商 做图 网站有哪些专注服务于站长和网站的信息平台.
  • 做汉字词卡的网站商业网站教程
  • 论坛网站建设价格wordpress 文字
  • 门户网站的营销特点网站后台 栏目管理
  • 网站布局建设wordpress破解管理员帐号
  • 网站建设 北京昌平wordpress 写博客插件
  • 网站怎么做才吸引人公司网站开发主要技术
  • 太仓市建设招标网站广州做网站平台
  • 上海网站建设润滋做网站要
  • 有没有做英语试题的网站长沙做网站的公司对比
  • 四川省建设科技协会网站装修公司的口碑排名
  • 上海建设工程质监站网站洛阳做网站公司
  • 做视频用的网站巴中做网站 微信开发
  • 网站设计O2O平台佛山总代理中国做网站最好的
  • 公司官网网站建设想法广告位招商怎么找客户
  • 医馆网站建设方案杭州seo俱乐部
  • 北京网站seo设计wordpress 推荐插件
  • 个人如何制作网站源码wordpress 免费主题推荐
  • 廊坊网站制作公司上海网站架设
  • 云南网站设计网站制作公司天强科技
  • 荷兰网站后缀南宁制作网站多少钱