深入学习SQL优化的第五天(最后一天)

news2024/9/30 23:09:38

子查询

1321 · 餐 馆 营 业 额 变 化 增 长

1321. 餐馆营业额变化增长

表: Customer

+---------------+---------+
| Column Name   | Type    |
+---------------+---------+
| customer_id   | int     |
| name          | varchar |
| visited_on    | date    |
| amount        | int     |
+---------------+---------+
在 SQL 中,(customer_id, visited_on) 是该表的主键。
该表包含一家餐馆的顾客交易数据。
visited_on 表示 (customer_id) 的顾客在 visited_on 那天访问了餐馆。
amount 是一个顾客某一天的消费总额。
 

你是餐馆的老板,现在你想分析一下可能的营业额变化增长(每天至少有一位顾客)。

计算以 7 天(某日期 + 该日期前的 6 天)为一个时间段的顾客消费平均值。average_amount 要 保留两位小数。

结果按 visited_on 升序排序。

返回结果格式的例子如下。

 

示例 1:

输入:
Customer 表:
+-------------+--------------+--------------+-------------+
| customer_id | name         | visited_on   | amount      |
+-------------+--------------+--------------+-------------+
| 1           | Jhon         | 2019-01-01   | 100         |
| 2           | Daniel       | 2019-01-02   | 110         |
| 3           | Jade         | 2019-01-03   | 120         |
| 4           | Khaled       | 2019-01-04   | 130         |
| 5           | Winston      | 2019-01-05   | 110         | 
| 6           | Elvis        | 2019-01-06   | 140         | 
| 7           | Anna         | 2019-01-07   | 150         |
| 8           | Maria        | 2019-01-08   | 80          |
| 9           | Jaze         | 2019-01-09   | 110         | 
| 1           | Jhon         | 2019-01-10   | 130         | 
| 3           | Jade         | 2019-01-10   | 150         | 
+-------------+--------------+--------------+-------------+
输出:
+--------------+--------------+----------------+
| visited_on   | amount       | average_amount |
+--------------+--------------+----------------+
| 2019-01-07   | 860          | 122.86         |
| 2019-01-08   | 840          | 120            |
| 2019-01-09   | 840          | 120            |
| 2019-01-10   | 1000         | 142.86         |
+--------------+--------------+----------------+
解释:
第一个七天消费平均值从 2019-01-01 到 2019-01-07 是restaurant-growth/restaurant-growth/ (100 + 110 + 120 + 130 + 110 + 140 + 150)/7 = 122.86
第二个七天消费平均值从 2019-01-02 到 2019-01-08 是 (110 + 120 + 130 + 110 + 140 + 150 + 80)/7 = 120
第三个七天消费平均值从 2019-01-03 到 2019-01-09 是 (120 + 130 + 110 + 140 + 150 + 80 + 110)/7 = 120
第四个七天消费平均值从 2019-01-04 到 2019-01-10 是 (130 + 110 + 140 + 150 + 80 + 110 + 130 + 150)/7 = 142.86
select 
    visited_on, amount, average_amount
from (
    select 
        distinct visited_on, 
        sum(amount) over(order by visited_on range interval 6 day preceding) amount, 
        round(sum(amount) over(order by visited_on range interval 6 day preceding)/7, 2) average_amount 
    from 
        Customer) t
where datediff(visited_on, (select min(visited_on) from Customer))>=6 
order by visited_on;

602.好友申请II:谁有最多的好友

602. 好友申请 II :谁有最多的好友

RequestAccepted 表:

+----------------+---------+
| Column Name    | Type    |
+----------------+---------+
| requester_id   | int     |
| accepter_id    | int     |
| accept_date    | date    |
+----------------+---------+
(requester_id, accepter_id) 是这张表的主键(具有唯一值的列的组合)。
这张表包含发送好友请求的人的 ID ,接收好友请求的人的 ID ,以及好友请求通过的日期。
 

编写解决方案,找出拥有最多的好友的人和他拥有的好友数目。

生成的测试用例保证拥有最多好友数目的只有 1 个人。

查询结果格式如下例所示。

 

示例 1:

输入:
RequestAccepted 表:
+--------------+-------------+-------------+
| requester_id | accepter_id | accept_date |
+--------------+-------------+-------------+
| 1            | 2           | 2016/06/03  |
| 1            | 3           | 2016/06/08  |
| 2            | 3           | 2016/06/08  |
| 3            | 4           | 2016/06/09  |
+--------------+-------------+-------------+
输出:
+----+-----+
| id | num |
+----+-----+
| 3  | 3   |
+----+-----+
解释:
编号为 3 的人是编号为 1 ,2 和 4 的人的好友,所以他总共有 3 个好友,比其他人都多。
 

进阶:在真实世界里,可能会有多个人拥有好友数相同且最多,你能找到所有这些人吗?
SELECT id,
COUNT(*) AS num
FROM(
    SELECT requester_id AS id FROM RequestAccepted
    UNION ALL 
    SELECT accepter_id AS id FROM RequestAccepted
    ) AS a
GROUP BY id
ORDER BY num DESC 
LIMIT 1
;

585.2016年的投资

585. 2016年的投资

Insurance 表:

+-------------+-------+
| Column Name | Type  |
+-------------+-------+
| pid         | int   |
| tiv_2015    | float |
| tiv_2016    | float |
| lat         | float |
| lon         | float |
+-------------+-------+
pid 是这张表的主键(具有唯一值的列)。
表中的每一行都包含一条保险信息,其中:
pid 是投保人的投保编号。
tiv_2015 是该投保人在 2015 年的总投保金额,tiv_2016 是该投保人在 2016 年的总投保金额。
lat 是投保人所在城市的纬度。题目数据确保 lat 不为空。
lon 是投保人所在城市的经度。题目数据确保 lon 不为空。
 

编写解决方案报告 2016 年 (tiv_2016) 所有满足下述条件的投保人的投保金额之和:

他在 2015 年的投保额 (tiv_2015) 至少跟一个其他投保人在 2015 年的投保额相同。
他所在的城市必须与其他投保人都不同(也就是说 (lat, lon) 不能跟其他任何一个投保人完全相同)。
tiv_2016 四舍五入的 两位小数 。

查询结果格式如下例所示。

 

示例 1:

输入:
Insurance 表:
+-----+----------+----------+-----+-----+
| pid | tiv_2015 | tiv_2016 | lat | lon |
+-----+----------+----------+-----+-----+
| 1   | 10       | 5        | 10  | 10  |
| 2   | 20       | 20       | 20  | 20  |
| 3   | 10       | 30       | 20  | 20  |
| 4   | 10       | 40       | 40  | 40  |
+-----+----------+----------+-----+-----+
输出:
+----------+
| tiv_2016 |
+----------+
| 45.00    |
+----------+
解释:
表中的第一条记录和最后一条记录都满足两个条件。
tiv_2015 值为 10 与第三条和第四条记录相同,且其位置是唯一的。

第二条记录不符合任何一个条件。其 tiv_2015 与其他投保人不同,并且位置与第三条记录相同,这也导致了第三条记录不符合题目要求。
因此,结果是第一条记录和最后一条记录的 tiv_2016 之和,即 45 。
SELECT ROUND(SUM(tiv_2016), 2) AS tiv_2016
FROM Insurance
WHERE tiv_2015 IN (
    SELECT tiv_2015
    FROM Insurance
    GROUP BY tiv_2015
    HAVING COUNT(*) > 1
)
AND (lat, lon) NOT IN (
    SELECT lat, lon
    FROM Insurance
    GROUP BY lat, lon
    HAVING COUNT(*) > 1
)

高级字符串函数 / 正则表达式 / 子句

1667.修复表中的名字

1667. 修复表中的名字

表: Users

+----------------+---------+
| Column Name    | Type    |
+----------------+---------+
| user_id        | int     |
| name           | varchar |
+----------------+---------+
user_id 是该表的主键(具有唯一值的列)。
该表包含用户的 ID 和名字。名字仅由小写和大写字符组成。
 

编写解决方案,修复名字,使得只有第一个字符是大写的,其余都是小写的。

返回按 user_id 排序的结果表。

返回结果格式示例如下。

 

示例 1:

输入:
Users table:
+---------+-------+
| user_id | name  |
+---------+-------+
| 1       | aLice |
| 2       | bOB   |
+---------+-------+
输出:
+---------+-------+
| user_id | name  |
+---------+-------+
| 1       | Alice |
| 2       | Bob   |
+---------+-------+
SELECT user_id,
CONCAT(UPPER(LEFT(name, 1)), LOWER(RIGHT(name, LENGTH(name) - 1))) AS name
FROM Users
ORDER BY user_id
;

1527.患某种疾病的患者

1527. 患某种疾病的患者

患者信息表: Patients

+--------------+---------+
| Column Name  | Type    |
+--------------+---------+
| patient_id   | int     |
| patient_name | varchar |
| conditions   | varchar |
+--------------+---------+
在 SQL 中,patient_id (患者 ID)是该表的主键。
'conditions' (疾病)包含 0 个或以上的疾病代码,以空格分隔。
这个表包含医院中患者的信息。
 

查询患有 I 类糖尿病的患者 ID (patient_id)、患者姓名(patient_name)以及其患有的所有疾病代码(conditions)。I 类糖尿病的代码总是包含前缀 DIAB1 。

按 任意顺序 返回结果表。

查询结果格式如下示例所示。

 

示例 1:

输入:
Patients表:
+------------+--------------+--------------+
| patient_id | patient_name | conditions   |
+------------+--------------+--------------+
| 1          | Daniel       | YFEV COUGH   |
| 2          | Alice        |              |
| 3          | Bob          | DIAB100 MYOP |
| 4          | George       | ACNE DIAB100 |
| 5          | Alain        | DIAB201      |
+------------+--------------+--------------+
输出:
+------------+--------------+--------------+
| patient_id | patient_name | conditions   |
+------------+--------------+--------------+
| 3          | Bob          | DIAB100 MYOP |
| 4          | George       | ACNE DIAB100 | 
+------------+--------------+--------------+
解释:Bob 和 George 都患有代码以 DIAB1 开头的疾病。

因为conditions中的糖尿病要么是在开头,要么是在中间但是前面会有一个空格,所以这么写 

SELECT * FROM Patients 
WHERE conditions LIKE 'DIAB1%' 
OR conditions LIKE '% DIAB1%'
;

196.删除重复的电子邮箱

196. 删除重复的电子邮箱

表: Person

+-------------+---------+
| Column Name | Type    |
+-------------+---------+
| id          | int     |
| email       | varchar |
+-------------+---------+
id 是该表的主键列(具有唯一值的列)。
该表的每一行包含一封电子邮件。电子邮件将不包含大写字母。
 

编写解决方案 删除 所有重复的电子邮件,只保留一个具有最小 id 的唯一电子邮件。

(对于 SQL 用户,请注意你应该编写一个 DELETE 语句而不是 SELECT 语句。)

(对于 Pandas 用户,请注意你应该直接修改 Person 表。)

运行脚本后,显示的答案是 Person 表。驱动程序将首先编译并运行您的代码片段,然后再显示 Person 表。Person 表的最终顺序 无关紧要 。

返回结果格式如下示例所示。

 

示例 1:

输入: 
Person 表:
+----+------------------+
| id | email            |
+----+------------------+
| 1  | john@example.com |
| 2  | bob@example.com  |
| 3  | john@example.com |
+----+------------------+
输出: 
+----+------------------+
| id | email            |
+----+------------------+
| 1  | john@example.com |
| 2  | bob@example.com  |
+----+------------------+
解释: john@example.com重复两次。我们保留最小的Id = 1。

在 MySQL 中,存在一个限制,即你不能直接在 UPDATE 语句的 FROM 子句中引用要更新的表(target table),然后试图在这个 FROM 子句中进行操作来更新同一表。这种操作会导致错误:“You can't specify target table 'Person' for update in FROM clause”。

这个限制是因为 MySQL 的解析器在处理这类查询时可能无法正确地区分何时应该读取表(以进行条件匹配)和何时应该写入表(以进行更新)。

有几种方法可以解决这个问题:使用临时表或派生表

你可以通过将更新逻辑封装在一个派生表(子查询)或临时表中来绕过这个限制。然后,你可以使用这个派生表或临时表来更新原始表。

也就是以下的做法:

DELETE FROM Person
WHERE id NOT IN (
   SELECT id FROM (
       SELECT MIN(id) AS id FROM Person GROUP BY email
   ) AS u
);

在不使用临时表的时候,是这样的:

DELETE FROM Person
WHERE id NOT IN (
       SELECT MIN(id) AS id FROM Person GROUP BY email
);

 而这样就会报错:You can't specify target table 'Person' for update in FROM clause

176.第二高的薪水

176. 第二高的薪水

Employee 表:
+-------------+------+
| Column Name | Type |
+-------------+------+
| id          | int  |
| salary      | int  |
+-------------+------+
id 是这个表的主键。
表的每一行包含员工的工资信息。
 

查询并返回 Employee 表中第二高的 不同 薪水 。如果不存在第二高的薪水,查询应该返回 null(Pandas 则返回 None) 。

查询结果如下例所示。

 

示例 1:

输入:
Employee 表:
+----+--------+
| id | salary |
+----+--------+
| 1  | 100    |
| 2  | 200    |
| 3  | 300    |
+----+--------+
输出:
+---------------------+
| SecondHighestSalary |
+---------------------+
| 200                 |
+---------------------+
示例 2:

输入:
Employee 表:
+----+--------+
| id | salary |
+----+--------+
| 1  | 100    |
+----+--------+
输出:
+---------------------+
| SecondHighestSalary |
+---------------------+
| null                |
+---------------------+
SELECT IFNULL((
SELECT DISTINCT salary 
FROM Employee
ORDER BY salary DESC
LIMIT 1, 1), NULL)
AS SecondHighestSalary
;

1484.按日期分组销售产品

1484. 按日期分组销售产品

表 Activities:

+-------------+---------+
| 列名         | 类型    |
+-------------+---------+
| sell_date   | date    |
| product     | varchar |
+-------------+---------+
该表没有主键(具有唯一值的列)。它可能包含重复项。
此表的每一行都包含产品名称和在市场上销售的日期。
 

编写解决方案找出每个日期、销售的不同产品的数量及其名称。
每个日期的销售产品名称应按词典序排列。
返回按 sell_date 排序的结果表。
结果表结果格式如下例所示。

 

示例 1:

输入:
Activities 表:
+------------+-------------+
| sell_date  | product     |
+------------+-------------+
| 2020-05-30 | Headphone   |
| 2020-06-01 | Pencil      |
| 2020-06-02 | Mask        |
| 2020-05-30 | Basketball  |
| 2020-06-01 | Bible       |
| 2020-06-02 | Mask        |
| 2020-05-30 | T-Shirt     |
+------------+-------------+
输出:
+------------+----------+------------------------------+
| sell_date  | num_sold | products                     |
+------------+----------+------------------------------+
| 2020-05-30 | 3        | Basketball,Headphone,T-shirt |
| 2020-06-01 | 2        | Bible,Pencil                 |
| 2020-06-02 | 1        | Mask                         |
+------------+----------+------------------------------+
解释:
对于2020-05-30,出售的物品是 (Headphone, Basketball, T-shirt),按词典序排列,并用逗号 ',' 分隔。
对于2020-06-01,出售的物品是 (Pencil, Bible),按词典序排列,并用逗号分隔。
对于2020-06-02,出售的物品是 (Mask),只需返回该物品名。
SELECT
    sell_date, 
    COUNT(DISTINCT product) AS num_sold, 
    GROUP_CONCAT(DISTINCT product ORDER BY product SEPARATOR ',') AS products
FROM Activities
GROUP BY sell_date
ORDER BY sell_date;

1327.列出指定时间段内所有的下单产品

1327. 列出指定时间段内所有的下单产品

表: Products

+------------------+---------+
| Column Name      | Type    |
+------------------+---------+
| product_id       | int     |
| product_name     | varchar |
| product_category | varchar |
+------------------+---------+
product_id 是该表主键(具有唯一值的列)。
该表包含该公司产品的数据。
 

表: Orders

+---------------+---------+
| Column Name   | Type    |
+---------------+---------+
| product_id    | int     |
| order_date    | date    |
| unit          | int     |
+---------------+---------+
该表可能包含重复行。
product_id 是表单 Products 的外键(reference 列)。
unit 是在日期 order_date 内下单产品的数目。
 

写一个解决方案,要求获取在 2020 年 2 月份下单的数量不少于 100 的产品的名字和数目。

返回结果表单的 顺序无要求 。

查询结果的格式如下。

 

示例 1:

输入:
Products 表:
+-------------+-----------------------+------------------+
| product_id  | product_name          | product_category |
+-------------+-----------------------+------------------+
| 1           | Leetcode Solutions    | Book             |
| 2           | Jewels of Stringology | Book             |
| 3           | HP                    | Laptop           |
| 4           | Lenovo                | Laptop           |
| 5           | Leetcode Kit          | T-shirt          |
+-------------+-----------------------+------------------+
Orders 表:
+--------------+--------------+----------+
| product_id   | order_date   | unit     |
+--------------+--------------+----------+
| 1            | 2020-02-05   | 60       |
| 1            | 2020-02-10   | 70       |
| 2            | 2020-01-18   | 30       |
| 2            | 2020-02-11   | 80       |
| 3            | 2020-02-17   | 2        |
| 3            | 2020-02-24   | 3        |
| 4            | 2020-03-01   | 20       |
| 4            | 2020-03-04   | 30       |
| 4            | 2020-03-04   | 60       |
| 5            | 2020-02-25   | 50       |
| 5            | 2020-02-27   | 50       |
| 5            | 2020-03-01   | 50       |
+--------------+--------------+----------+
输出:
+--------------------+---------+
| product_name       | unit    |
+--------------------+---------+
| Leetcode Solutions | 130     |
| Leetcode Kit       | 100     |
+--------------------+---------+
解释:
2020 年 2 月份下单 product_id = 1 的产品的数目总和为 (60 + 70) = 130 。
2020 年 2 月份下单 product_id = 2 的产品的数目总和为 80 。
2020 年 2 月份下单 product_id = 3 的产品的数目总和为 (2 + 3) = 5 。
2020 年 2 月份 product_id = 4 的产品并没有下单。
2020 年 2 月份下单 product_id = 5 的产品的数目总和为 (50 + 50) = 100 。
SELECT 
    product_name,
    SUM(unit) AS unit
FROM orders a
LEFT JOIN products b 
ON a.product_id = b.product_id
WHERE order_date LIKE '2020-02%'
GROUP BY 1
HAVING SUM(unit) >= 100
;

在SQL查询语句中,GROUP BY 1 的意思是按照查询结果中的第一列进行分组汇总.

1517.查找拥有有效邮箱的用户

1517. 查找拥有有效邮箱的用户

表: Users

+---------------+---------+
| Column Name   | Type    |
+---------------+---------+
| user_id       | int     |
| name          | varchar |
| mail          | varchar |
+---------------+---------+
user_id 是该表的主键(具有唯一值的列)。
该表包含了网站已注册用户的信息。有一些电子邮件是无效的。
 

编写一个解决方案,以查找具有有效电子邮件的用户。

一个有效的电子邮件具有前缀名称和域,其中:

 前缀 名称是一个字符串,可以包含字母(大写或小写),数字,下划线 '_' ,点 '.' 和/或破折号 '-' 。前缀名称 必须 以字母开头。
域 为 '@leetcode.com' 。
以任何顺序返回结果表。

结果的格式如以下示例所示:

 

示例 1:

输入:
Users 表:
+---------+-----------+-------------------------+
| user_id | name      | mail                    |
+---------+-----------+-------------------------+
| 1       | Winston   | winston@leetcode.com    |
| 2       | Jonathan  | jonathanisgreat         |
| 3       | Annabelle | bella-@leetcode.com     |
| 4       | Sally     | sally.come@leetcode.com |
| 5       | Marwan    | quarz#2020@leetcode.com |
| 6       | David     | david69@gmail.com       |
| 7       | Shapiro   | .shapo@leetcode.com     |
+---------+-----------+-------------------------+
输出:
+---------+-----------+-------------------------+
| user_id | name      | mail                    |
+---------+-----------+-------------------------+
| 1       | Winston   | winston@leetcode.com    |
| 3       | Annabelle | bella-@leetcode.com     |
| 4       | Sally     | sally.come@leetcode.com |
+---------+-----------+-------------------------+
解释:
用户 2 的电子邮件没有域。 
用户 5 的电子邮件带有不允许的 '#' 符号。
用户 6 的电子邮件没有 leetcode 域。 
用户 7 的电子邮件以点开头。
SELECT user_id,name,mail 
FROM Users 
WHERE mail REGEXP '^[a-zA-Z][a-zA-Z0-9\\_\\.\\-]*@leetcode\\.com$' 
;
# regexp 正则表达式
# ^[a-zA-Z] 表示以字母开头
# [a-zA-Z0-9\\_\\.\\-]表示中间的字符传只能以这个范围内的字符构成
# *表示匹配多个字符
# @leetcode\\.com$ 表示以该字符串结尾
# \\表示转义字符 转标点符号

完结撒花*★,°*:.☆( ̄▽ ̄)/$:*.°★* 。

近日总结:

 暂栖的鸟儿终将离去,

 伴飞的双鸟终将分离。

差不多两年的时间,有的人选择继续折磨,有的人在暴露本性之后恶毒的咒骂。

事了拂身去,沾染过的枝头失去了原本的光泽,留在原地的枝头经过短暂的治愈,继续向上伸展。

还是和大一的时候一样的话,男人,除了自己的亲人,都靠不住。

所以,继续作为一颗橡树向上伸展吧。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2087503.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【曾哥分享-1】云 WAF 绕过

幕布链接:【曾哥分享-1】云 WAF 绕过 - 幕布

【DSP+FPGA】基于Virtex-7 FPGA + C6678 DSP的高性能实时信号处理平台

DSP FPGA 协同处理架构板载 1 个TMS320C6678 多核DSP处理节点板载 1 片 XC7VX690T FPGA处理节点板载 1 个FMC 接口板载4路SFP光纤接口FPGA 与 DSP 之间采用高速Rapid IO互联 基于Virtex-7 FPGA的高性能实时信号处理平台,该平台采用1片TI的KeyStone系列多核DSP TMS3…

【DSP+FPGA】基于2 个TMS320C6678+ XC7VX690T FPGA 的6U VPX 总线架构的高性能实时信号处理平台

6U VPX架构,符合VITA46规范板载 2 个TMS320C6678 多核DSP处理节点板载 1 片 XC7VX690T FPGA处理节点板载 2 个FMC 接口背板之间具有 4 路 x4 高速 GTH 互联,支持RapidIO、PCI ExpressFPGA 与 DSP 之间采用高速Rapid IO互联 基于6U VPX架构的高性能实时信…

变分自编码器(Variational Autoencoder, VAE):深入理解与应用

变分自编码器(Variational Autoencoder, VAE):深入理解与应用 在深度学习的广阔领域中,生成模型一直是研究的热点之一。其中,VAE(变分自编码器)作为AE(自编码器)的一种扩…

Java | Leetcode题解之第383题赎金信

题目: 题解: class Solution {public boolean canConstruct(String ransomNote, String magazine) {if (ransomNote.length() > magazine.length()) {return false;}int[] cnt new int[26];for (char c : magazine.toCharArray()) {cnt[c - a];}for…

华为集合通信库开源了!HCCL开源链接、架构、拓扑算法、常用接口

激动啊!我们华为HCCL终于开源了! 视频分享在这: 华为集合通信库开源了!HCCL开源链接、拓扑算法、常用接口_哔哩哔哩_bilibili 一、HCCL相关链接 源码位置(需注册华为账号才可下载) cann-hccl: cann-hc…

渲染引擎实践 - UnrealEngine引擎中启用 Vulkan 和使用 Renderdoc 抓帧

一:方法一: 1. 到 .\Engine\UE_5.2\Engine\Binaries\Win64 目录下(以Windows平台为例),找到UnrealEditor, 并创建桌面快捷方式。 2. 右键快捷方式,配置运行参数: -vulkan -AttachRenderDoc 二…

vulhub xxe靶机攻击教程

使用御剑目录扫描工具测试一下,发现有robots.txt文件 访问robots.txt文件,这个文件通常放的是一个网站的目录 我们得到两个目录,试着访问一下 xxe目录下是一个登录页面,xxe/admin.php目录下也是一个登录页面 我们先在xxe页面进行…

idea未加载Marketplace插件问题

今天想用idea安装一些插件,结果迟迟加载不出来 直到我将网络换成手机热点突然就好了,还真的是网络的问题

LIN诊断(2)—— 在CANoe软件中,加载cdd/pdx等诊断数据库时,切换调度表的不同方式选择

🍅 我是蚂蚁小兵,专注于车载诊断领域,尤其擅长于对CANoe工具的使用🍅 寻找组织 ,答疑解惑,摸鱼聊天,博客源码,点击加入👉【相亲相爱一家人】🍅 玩转CANoe&…

cesium 发光线

发光线也是一种比较常见的可视化效果,cesium 内置的材质已经提供了PolylineGlowMaterialProperty类,实现了发光效果。这种材质在线的中间部分始终会有白色线条,如果想实现纯色的发光线,就需要对这种材质进行改造。本篇通过自定义M…

VTK随笔十:VTK图形处理(封闭性检测、联通区域分析、多分辨率处理)

一、封闭性检测 如果一条边只被一个多边形包含,那么这条边就是边界边。 是否存在边界边是检测一个网格模型是否封闭的重要特征。 vtkFeatureEdges是一个非常重要的类,该类能够提取多边形网格模型中四种类型的边。 1)边界边。即只被一个多边形或者…

解释预测的艺术

如何以人性化的方式解释你的模型 可直接在橱窗里购买,或者到文末领取优惠后购买: 数据科学家职责的一个重要部分是解释模型预测。通常,接受解释的人不是技术人员。如果你开始谈论成本函数、超参数或 p 值,你将会遇到茫然的表情。我…

List集合和Set集合

Collection: Collection 不唯一,无序 List 不唯一,有序 Set 唯一,无序 ArrayList:内部使用长度可变的数组,遍历查询效率高 LinkedList:采用双向链表实现,增删改效率比较高 ArrayL…

【小白深度学习入门】【2】池化层详解:工作原理、维度计算、池化类型

《博主简介》 小伙伴们好,我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 👍感谢小伙伴们点赞、关注! 《------往期经典推荐------》 一、AI应用软件开发实战专栏【链接】 项目名称项目名称1.【人脸识别与管理系统开发…

Dataworks_PySpark开发流程

PySpark是由Spark官方开发的Python语言第三方库,Python开发者可以通过使用python语言来编写Spark程序和SparkSQL完成开发。 之所以采用PySpark而不采用Java/Scala,是由于: Dataworks可通过将代码在线写入DataWorks Python资源的方式&#xf…

Android 12系统源码_输入系统(一)认识Android的输入系统

前言 问渠那得清如许,为有源头活水来。对于大多数现代操作系统中,“事件”就是它们的“活水源头”,正是在“事件和消息”的不断产生、流转和处理中,整个软件系统才能“动”起来。 Android系统有一套从底层Linux内核到上层应用程…

合宙LuatOS产品规格书——Air780EQ

合宙Air780EQ, 基于移芯EC716E高端平台, 集成LTE 3GPP Release 13技术,确保高速、稳定的网络连接; 广泛兼容各大运营商网络,实现真正的全网通设计,提升产品市场适应性与灵活性。 Air780EQ 4G全网通模块核…

Unity(2022.3.41LTS) - 角色控制器和3D刚体

目录 一. 角色控制 二. 3D刚体 一. 角色控制 名称:功能:坡度限制将碰撞器限制为仅爬升比指示值更陡峭(以度为单位)的斜坡。步长偏移只有当楼梯离地面比指示值更近时,角色才会爬上楼梯。此值不应大于 Character Contr…

追求全能还是专精?——AI模型的未来趋势探讨

AI模型:追求全能还是专精? 近日,OpenAI预计在秋季推出代号为“草莓”的新AI。从专注于数学问题到处理主观营销策略,"草莓"模型展现出惊人的多样性。而这种全能型 AI 是否代表了未来趋势?相比专攻于某一领域的…