​LeetCode刷题实战626:换座位

共 624字,需浏览 2分钟

 ·

2022-06-09 01:04

算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试。所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 !

今天和大家聊的问题叫做 换座位,我们先来看题面:
https://leetcode.cn/problems/exchange-seats/


编写SQL查询来交换每两个连续的学生的座位号。如果学生的数量是奇数,则最后一个学生的id不交换。

按 id 升序 返回结果表。

查询结果格式如下所示。

示例


解题

主要思路:
若id是偶数,减1
若id是奇数,加1
如果总数是奇数,最后一个不换

# Write your MySQL query statement below
select
    case
        when id%2=0 then id-1
        when id=(select count(id) from Seat) then id
        else id+1
    end as id,
    student
from Seat
order by id;


上期推文:
LeetCode1-620题汇总,希望对你有点帮助!
LeetCode刷题实战621:任务调度器
LeetCode刷题实战622:设计循环队列
LeetCode刷题实战623:在二叉树中增加一行
LeetCode刷题实战624:数组列表中的最大距离

浏览 36
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报