做建材营销型网站家居装修设计

张小明 2026/1/15 18:19:50
做建材营销型网站,家居装修设计,空白网站怎么做,南浔区住房和城乡建设网站问题代码#include iostream #include vector #include stack using namespace std; //算法思路#xff1a;既能流向大西洋 #xff0c;又能流向太平洋 #xff0c;并且水往低处流 //正向寻找这样的点线会使得代码复杂#xff0c;时间复杂度较大O((…问题代码#include iostream#include vector#include stackusing namespace std;//算法思路既能流向大西洋 又能流向太平洋 并且水往低处流//正向寻找这样的点线会使得代码复杂时间复杂度较大O((mn)*(mn))//反向思路使用非递归DFS递归DFS可能会因网格过深导致栈溢出所以用栈模拟递归实现更加稳定class Solution {private:// 定义4个方向上下左右行和列的偏移量vectorvectorint dirs { {-1, 0}, {1, 0}, {0, -1}, {0, 1} };// 存储网格的总行数和总列数int rows, cols;//heights 地形高度网格,visited 标记数组记录该位置是否能到达对应海洋//y 当前起始点的列坐标,x 当前起始点的行坐标// 坐标合法性检查判断(r,c)是否在网格内bool isValid(int x ,int y) {return x 0 x rows y 0 y cols;}void dfs_iter(vectorvectorint heights, int x, int y, vectorvectorbool visited) {// 用栈来模拟递归存储待访问的坐标stackpairint, int st;//栈的初始化 使得可存储坐标对类型st.push({x, y});// 起始点入栈visited[x][y] true;//标记为已访问,避免重复// 栈不为空时循环非递归DFS的核心while (!st.empty()) {// 取出栈顶元素当前访问的坐标// 取出栈顶的pair对象pairint, int cur st.top();st.pop();// 分别赋值给cur_x和cur_yint cur_x cur.first;int cur_y cur.second;// 遍历4个方向for (auto dir : dirs) {// 计算相邻位置的坐标int nx cur_x dir[0], ny cur_y dir[1];// 边界条件判断// 1. 坐标在网格范围内// 2. 该位置未被访问过// 3. 相邻位置的高度 当前位置高度水往低处流反向就是高处能流向当前处if (nx 0 nx rows ny 0 ny cols !visited[nx][ny] heights[nx][ny] heights[cur_x][cur_y]) {// 标记该位置可到达并入栈等待后续遍历visited[nx][ny] true;st.push({nx, ny});}}}}public:/*** 找出既能流向太平洋又能流向大西洋的所有位置* param heights 地形高度网格* return 满足条件的坐标列表*/vectorvectorint pacificAtlantic(vectorvectorint heights) {// 存储最终结果满足条件的坐标对vectorvectorint res;// 边界处理如果网格为空直接返回空结果if (heights.empty()) return res;// 初始化总行数和总列数rows heights.size(), cols heights[0].size();// pacific[i][j]标记(i,j)位置的水能否流向太平洋vectorvectorbool pacific(rows, vectorbool(cols, false));// atlantic[i][j]标记(i,j)位置的水能否流向大西洋vectorvectorbool atlantic(rows, vectorbool(cols, false));// 初始化边界从太平洋的边界开始DFS// 第一行顶部边界的所有位置都能直接流向太平洋for (int j 0; j cols; j) {dfs_iter(heights, 0, j, pacific);// 最后一行底部边界的所有位置都能直接流向大西洋dfs_iter(heights, rows-1, j, atlantic);}// 初始化边界从大西洋的边界开始DFS// 第一列左侧边界的所有位置都能直接流向太平洋for (int i 0; i rows; i) {dfs_iter(heights, i, 0, pacific);// 最后一列右侧边界的所有位置都能直接流向大西洋dfs_iter(heights, i, cols-1, atlantic);}// 补充原代码缺失了结果收集的逻辑这里补上for (int i 0; i rows; i) {for (int j 0; j cols; j) {// 如果一个位置既能流向太平洋又能流向大西洋加入结果if (pacific[i][j] atlantic[i][j]) {res.push_back({i, j});}}}return res;}};int main() {vectorvectorint heights {{1, 2, 2, 3, 5},{3, 2, 3, 4, 4},{2, 4, 5, 3, 1},{6, 7, 1, 4, 5},{5, 1, 1, 2, 4}};Solution sol;vectorvectorint res sol.pacificAtlantic(heights);cout 沿海生态保护区规划 - 关键水资源连通区域 endl;cout 场景说明这些区域是海陆水资源循环的核心对生态保护至关重要 endl;cout 关键区域坐标行, 列 endl;for (auto pos : res) {cout ( pos[0] , pos[1] ) endl;}cout endl;return 0;}思路解释寻求既能流向太平洋又能流向大西洋的点按照水往低处流的自然规律进行正向解决过于复杂时间复杂度Omn*mn遂采取反向搜索从边界出发从小到大分别寻找可以流入大西洋和太平洋的点并取两个集合的交集保证其既能流入大西洋又能流入太平洋。因为递归DFS方法可能因为网格过深而导致溢出所以采用栈模拟DFS方法。先定义网格的行列以及网格遍历周围点的移动数组并且设置循环检验点的合法化然后定义初始化栈并且设置起始点入栈并且进行标记然后对不控的站进行处理先取出栈顶元素然后重新设置一个值分别表示为取出的栈顶的点的行纵坐标经过移动的值依次遍历取出点上下左右四个方向的点是否满足在网格内并且周围点的值大于取出点的值然后用atlantic标记大西洋用pacific标记太平洋最后去两个集合的交集得出测试结果
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

网站优化公司大家好宁波seo高级方法

1. 为什么这个毕设项目值得你 pick ? 印染行业库存智慧管理系统主要功能模块包括仓库管理、供货单位和收货单位管理、经办人员管理和货品及库存管理等,支持普通员工数据录入与查阅执行,并允许部门领导进行审核与统计分析。该系统采用SpringMVC框架开发…

张小明 2026/1/10 6:21:48 网站建设

做网站找哪家最好怎么看一个网站做没做竞价

第十四次一,多态之函数重载1,多态 : 同一个方法,不同形态体现2,多态分为 : 静态多态和动态多态3,静态多态: 函数重载和符号重载4,动态多态: 抽象和虚方法5,函…

张小明 2026/1/13 6:31:25 网站建设

网站开发模块分类有什么软件可以制作抽奖页面

商业智能:数据库管理与报告解决方案 一、Analysis Services 数据库管理 1.1 维护工作 在商业智能(BI)解决方案交付后,通常很快就需要进行一些增强。这是因为人们使用 BI 应用的方式决定了,每当看到有趣的信息时,他们就会希望获取更多特定方面的详细信息。 1.1.1 使用…

张小明 2026/1/14 15:02:39 网站建设

广东专业企业网站建设国外做糖网站

第一章:Open-AutoGLM无线调试开启在嵌入式开发与边缘AI部署场景中,Open-AutoGLM 提供了一套高效的无线调试机制,允许开发者远程监控模型推理状态、调整参数配置并实时获取日志信息。启用该功能前,需确保设备已接入同一局域网&…

张小明 2026/1/11 11:04:46 网站建设

站中站网站案例linux打包网站做备份

深度神经网络中的梯度下降优化策略与实现技巧 在深度学习领域,梯度下降算法是优化模型参数的重要手段。不同的梯度下降变体在性能、效率和收敛速度上各有特点,下面我们将详细探讨几种常见的梯度下降方法,并介绍相关的实现技巧和注意事项。 随机梯度下降(SGD)的特点与问题…

张小明 2026/1/12 13:23:08 网站建设

网站域名到期不续费会怎么样网站开发税收标准

动态数据刷新实战:如何让上位机界面“跟得上”高速采集?你有没有遇到过这样的场景?开发一个工业数据监控软件,下位机每10毫秒就发来一组传感器读数。可你在界面上看到的波形却像卡顿的老电影——跳帧、延迟、甚至偶尔还抽搐一下。…

张小明 2026/1/13 20:15:11 网站建设