楼主: shannyhe
跳转到指定楼层
上一主题 下一主题
收起左侧

亚麻社招oa

🔗
hxuanyu 2018-8-20 21:03:56 | 只看该作者
全局:
[quote]hxuanyu 发表于 2018-8-20 20:22
  1. class maze {
  2. public:
  3.     int minPathSum(vector& grid, int x, int y) {
  4. [/quote]
  5. 哈哈,才看到真题,原来target不一定在右下角,这样可以4个方向查找,重新写了一遍,lz能帮我看看吗 谢啦

  6. [code]
  7. class maze {
  8. public:
  9.     int minPathSum(vector<vector<int>>& grid) {
  10.         if (grid[0][0] == 0) return -1;

  11.         vector<vector<bool>> visited(grid.size(), vector<bool>(grid[0].size(), false));

  12.         queue<pair<int, int>> que;
  13.         que.push(make_pair(0, 0));
  14.         visited[0][0] = true;

  15.         vector<vector<int>> dirs = { {-1, 0}, {0, 1}, {1,0},{0, -1} };

  16.         int dis = 1;
  17.         while (!que.empty()) {
  18.             int size = que.size();
  19.             for (int i = 0; i < size; i++) {
  20.                 auto top = que.front();
  21.                 que.pop();
  22.                
  23.                 if (grid[top.first][top.second] == 9) return dis;

  24.                 for (auto dir : dirs) {
  25.                     int newx = top.first + dir[0];
  26.                     int newy = top.second + dir[1];

  27.                     if ((newx < 0) || (newy < 0) || (newx >= grid.size()) || (newy >= grid[0].size()) || (grid[newx][newy] == 0)) continue;

  28.                     que.push(make_pair(newx, newy));
  29.                     visited[newx][newy] = true;
  30.                 }
  31.             }
  32.             dis++;
  33.         }

  34.         return -1;
  35.     }
  36. };
复制代码


回复

使用道具 举报

🔗
CChCheChen404 2018-8-20 23:54:57 | 只看该作者
本楼:
全局:
感谢楼主
回复

使用道具 举报

🔗
earlybirds 2018-8-24 05:50:40 | 只看该作者
全局:
这个妹子撞到墙之前只能朝一个方向走还是可以随意变换方向?
回复

使用道具 举报

🔗
lajalex 2018-8-24 07:32:57 | 只看该作者
全局:
shannyhe 发表于 2018-8-20 11:12
补充一下:
卡车找最短距离:
大意是说Amazon 开了新的warehouse,要用卡车给其他地方送货

是找距离0, 0最近的M个么?
回复

使用道具 举报

🔗
 楼主| shannyhe 2018-8-24 08:30:22 | 只看该作者
全局:
lajalex 发表于 2018-8-24 07:32
是找距离0, 0最近的M个么?

对的 是找距离0, 0最近的M

评分

参与人数 1大米 +5 收起 理由
closewen + 5 .

查看全部评分

回复

使用道具 举报

🔗
 楼主| shannyhe 2018-8-24 08:31:06 | 只看该作者
全局:
earlybirds 发表于 2018-8-24 05:50
这个妹子撞到墙之前只能朝一个方向走还是可以随意变换方向?

4个方向 就是b f s 4个方向遍历

评分

参与人数 1大米 +5 收起 理由
closewen + 5 .

查看全部评分

回复

使用道具 举报

🔗
earlybirds 2018-8-24 23:26:12 | 只看该作者
全局:
shannyhe 发表于 2018-8-24 08:31
4个方向 就是b f s 4个方向遍历

感觉好难 怎么储存最短步数呢
回复

使用道具 举报

🔗
 楼主| shannyhe 2018-8-25 12:01:08 | 只看该作者
全局:
earlybirds 发表于 2018-8-24 23:26
感觉好难 怎么储存最短步数呢

啊 level order traverse 按层数遍历吖 碰到目的地就是最短的啦
回复

使用道具 举报

🔗
人可木卯 2018-8-29 14:58:49 | 只看该作者
全局:
LZ请问你做完后问你分析时间复杂度的时候还问了空间复杂度吗
回复

使用道具 举报

🔗
 楼主| shannyhe 2018-9-5 00:05:51 | 只看该作者
全局:
人可木卯 发表于 2018-8-29 14:58
LZ请问你做完后问你分析时间复杂度的时候还问了空间复杂度吗

系统问了

评分

参与人数 1大米 +5 收起 理由
closewen + 5 .

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表