陕西省建设网站 五大员过期wordpress5.0难用

张小明 2026/1/13 0:40:25
陕西省建设网站 五大员过期,wordpress5.0难用,wordpress电子商务站,php网站开发注意问题代码随想录-栈 150、逆波兰表达式求值 刚开始看到题目的时候有点懵#xff0c;不太了解逆波兰表达式#xff0c;其实就是后缀表达式#xff0c;是计算机的思考运行模式。这道题很适合用栈来解决#xff0c;思路#xff1a; 定义一个 Int 型的栈然后去遍历字符串#x…代码随想录-栈150、逆波兰表达式求值刚开始看到题目的时候有点懵不太了解逆波兰表达式其实就是后缀表达式是计算机的思考运行模式。这道题很适合用栈来解决思路定义一个 Int 型的栈然后去遍历字符串遍历到数值时就压入栈中遍历到运算符时就取栈顶的两个元素进行运算并将结果压入栈中字符串遍历完成后取出栈中的元素返回即可class Solution { public int evalRPN(String[] tokens) { StackInteger st new Stack(); for (int i 0; i tokens.length; i) { if (.equals(tokens[i]) || -.equals(tokens[i]) || *.equals(tokens[i]) || /.equals(tokens[i])) { int number1 st.pop(); int number2 st.pop(); if (.equals(tokens[i])) st.push(number1 number2); if (-.equals(tokens[i])) st.push(number2 - number1); if (*.equals(tokens[i])) st.push(number2 * number1); if (/.equals(tokens[i])) st.push(number2 / number1); } else { st.push(Integer.valueOf(tokens[i])); } } return st.pop(); } }做这道题目时出了两种错误对 Java 中字符类型的判断函数使用错误写成了 tokens[i] 这是错误的因为 比较的是内存地址也就是引用是否相同而本题是需要比较字符串的内容需要使用equals()在取栈顶元素时误用了栈的操作函数写成了 int number1 st.top() 这里是使用了视频中卡哥讲的c取栈顶元素的API但是在Java中应该使用 .pop() 函数int number1 st.pop(); // 弹出并返回栈顶元素 // 或 int number1 st.peek(); // 仅返回栈顶元素不弹出另外在探索学习的过程中AI还指出了当前代码太low了存在两个可以优化的点for循环中的索引遍历可以使用for-each代替if-else 结构可以使用 switch 进行优化使代码可读性更强更简洁优化完虽然代码行数变多了但是执行效率提高了很多class Solution { public int evalRPN(String[] tokens) { StackInteger st new Stack(); for (String token : tokens) { switch (token) { case : st.push(st.pop() st.pop()); break; case * : st.push(st.pop() * st.pop()); break; case - : int number1 st.pop(); int number2 st.pop(); st.push(number2 - number1); break; case / : int div1 st.pop(); int div2 st.pop(); st.push(div2 / div1); break; default : st.push(Integer.parseInt(token)); } } return st.pop(); } }239、滑动窗口最大值这道题看起来感觉思路挺清晰的无非就是每滑动一次找出窗口范围内的最大值但实现起来真是复杂看了视频讲解独立写的时候还卡住好多次思路定义一个Deque用于存储数组的索引以此来定位滑动窗口的最大值这里为什么存储下标不直接存储数组的值是因为存储下标便于根据下标判断滑动窗口的有效位置定义一个整型数组长度为 n-k1用于存储在滑动窗口中找到的最大值这里为什么长度是 n-k1因为窗口在数组上移动时有效位置范围是[0, n-k]所以共 n-k1 个位置定义一个指针从0开始往数组中增加元素开始遍历数组遍历数组时将满足条件的数值对应的下标存放入Deque中由于题目要求在窗口范围内查找最大值所以当窗口往后滑动的过程中需要移除超出窗口内有效位置的下标即 Deque.peek() i-k1此外为便于在窗口滑动的过程中获取最大值将队列维护成单调队列保持队列头部元素为最大值如果即将加入的元素小于当前队列中已有元素那正常加入队列如果即将加入的元素大于当前队列中已有元素那么就从队列尾部弹出当前队列的元素直到队列中的元素大于即将加入的元素因为要找最大值如果加入的元素比之前的大那么之前的元素就没必要再比较了肯定不会是当前滑动窗口的最大值当 i 遍历到满足一个有效滑动窗口的位置时就可以找出当前窗口的最大值了由于是单调队列所以后面获取最大值时只需将队列头部元素对应下标的数组元素放入结果数组中即可遍历完整个数组后返回整型数组即可class Solution { public int[] maxSlidingWindow(int[] nums, int k) { ArrayDequeInteger deque new ArrayDeque(); int n nums.length; int[] result new int[n - k 1]; int index 0; for (int i 0; i n; i) { while (!deque.isEmpty() deque.peek() i - k 1) { deque.poll(); } while (!deque.isEmpty() nums[i] nums[deque.peekLast()]) { deque.pollLast(); } deque.offer(i); if (i k - 1) { result[index] nums[deque.peek()]; } } return result; } }347、前K个高频元素拿到题目想到了用map结构来记录每个元素出现的频次然后再根据map中最大的前K个value对应的key从而得出结果。但根据value排序取对应的key好像挺复杂的不知道怎么实现去看了讲解后才意识到需要用优先级队列这个数据结构思路定义一个HashMap用于存放元素、及其出现的频次遍历数组将元素值记为key出现的频次记为value存入map中定义一个优先级队列这里以小顶堆的方式定义该队列遍历map如果当前队列的长度还没有达到 k则继续往队列中增加value如果当前队列的长度已经达到 k则比较将要加入的 value 与当前队列头部的value也就是堆顶的value如果即将要加入的元素更大则把堆顶弹出在后面加入新元素遍历完map构建完小顶堆后将堆元素逐个弹出并存放在数组中即可class Solution { public int[] topKFrequent(int[] nums, int k) { MapInteger, Integer map new HashMap(); for (int num : nums) { map.put(num, map.getOrDefault(num, 0) 1); } PriorityQueueint[] pq new PriorityQueue((pair1, pair2) - pair1[1] - pair2[1]); for (Map.EntryInteger, Integer entry : map.entrySet()) { if (pq.size() k) { pq.add(new int[]{entry.getKey(), entry.getValue()}); } else { if (entry.getValue() pq.peek()[1]) { pq.poll(); pq.add(new int[]{entry.getKey(), entry.getValue()}); } } } int[] result new int[k]; for (int i k - 1; i 0; i--) { result[i] pq.poll()[0]; } return result; } }
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

在哪个网站做旅游攻略好营销网站html

想象一下,你正在组建一个虚拟团队:有擅长研究的分析师、文笔优美的撰稿人、经验丰富的项目经理。在CrewAI的世界里,这些角色由不同的AI智能体扮演,它们能够像真实团队成员一样互相协作、分配任务、分享信息,共同完成复…

张小明 2025/12/31 17:03:50 网站建设

网站开发人员职责便民信息免费发布平台

在工程计算与仿真领域,有限元方法作为核心技术之一,为结构分析、热传导、流体动力学等复杂问题提供了强大的解决方案。今天,我们为您深度解析何晓明教授的有限元基础课程开源资源,这是一套系统性的学习体系,助力您从理…

张小明 2025/12/25 21:07:40 网站建设

百度推广网站谁做盐城网站建设流程

WCF服务分布式事务支持的实现与测试 1. 验证WCF服务不支持分布式事务 在使用多个数据库时,验证另一个更新已提交到数据库,这表明WCF服务即使在不同计算机上有多个数据库的情况下,也不支持分布式事务。 2. 修改数据访问层以支持第二个数据库 为了让数据访问层支持第二个数…

张小明 2026/1/9 20:15:25 网站建设

大气集团企业网站模板上海企业注销一窗通

第一章:从零构建PHP扩展:基于Rust的高性能模块开发实战(完整源码级教程)在现代Web开发中,PHP仍占据重要地位,但其性能瓶颈在高并发场景下日益凸显。借助Rust语言的内存安全与极致性能,结合FFI&a…

张小明 2026/1/6 18:06:26 网站建设

如何给公司网站做优化高端互联网网站

在AI视频生成技术日益成熟的当下,创作者们正面临着一个关键抉择:是追求极致的画面质量,还是拥抱高效的生成速度?WAN2.2-14B-Rapid-AllInOne的出现给出了一个全新的答案——通过创新的多模型融合架构,在保证专业级画质的…

张小明 2025/12/25 21:06:00 网站建设

河南做网站泰国做性的短视频网站

MANO手部模型实战指南:从零构建逼真3D手势交互系统 【免费下载链接】MANO A PyTorch Implementation of MANO hand model. 项目地址: https://gitcode.com/gh_mirrors/ma/MANO 想要快速掌握3D手部建模的核心技术吗?MANO(Mesh-based An…

张小明 2026/1/9 10:32:05 网站建设