跳躍遊戲#
給定一個非負整數數組 nums ,你最初位於數組的第一個下標。
數組中的每個元素代表你在該位置可以跳躍的最大長度。
判斷你是否能夠到達最後一個下標。
示例 1:
輸入:nums = [2,3,1,1,4]
輸出:true
解釋:可以先跳 1 步,從下標 0 到達下標 1, 然後再從下標 1 跳 3 步到達最後一個下標。
示例 2:
輸入:nums = [3,2,1,0,4]
輸出:false
解釋:無論怎樣,總會到達下標為 3 的位置。但該下標的最大跳躍長度是 0 , 所以永遠不可能到達最後一個下標。
- 能運行通過,但是不可以提交!!!
class Solution {
public boolean canJump(int[] nums) {
int max=0;
for(int i=0;i<nums.length;++i){
if(i<=max)
max=Math.max(max,i+nums[i]);
if(max>nums.length-1)
return true;
}
return false;
}
}
加一下數據庫的知識吧!#
假設你的數據庫表結構如下:
- 學生表(Students):學號(StudentID),姓名(Name),等等
- 成績表(Scores):學號(StudentID),課程號(CourseID),成績(Score)
- 課程表(Courses):課程號(CourseID),課程名(CourseName),教師號(TeacherID)
- 教師表(Teachers):教師號(TeacherID),姓名(TeacherName)
你可以使用以下的 SQL 查詢語句來獲取平均成績大於 60 分的學生的學號和平均成績:
SELECT Students.StudentID, AVG(Scores.Score) AS AverageScore
FROM Students
JOIN Scores ON Students.StudentID = Scores.StudentID
GROUP BY Students.StudentID
HAVING AVG(Scores.Score) > 60;
這個查詢首先通過 JOIN 操作將學生表和成績表連接在一起,然後使用 GROUP BY 語句按學生的學號進行分組。最後,使用 HAVING 語句篩選出平均成績大於 60 分的學生。
注意,這個查詢假設每個學生的學號在學生表中是唯一的,而且每個學生至少有一門課的成績。如果這些假設不成立,你可能需要修改查詢以適應你的實際情況#
假設你的數據庫表結構如下:
- 學生表(Students):學號(StudentID),姓名(Name),學校(School),等等
- 成績表(Scores):學號(StudentID),課程號(CourseID),成績(Score)
你可以使用以下的 SQL 查詢語句來獲取所有學生的學校,姓名,選課數,總成績:
SELECT Students.School, Students.Name, COUNT(Scores.CourseID) AS CourseCount, SUM(Scores.Score) AS TotalScore
FROM Students
LEFT JOIN Scores ON Students.StudentID = Scores.StudentID
GROUP BY Students.StudentID;
這個查詢首先通過 LEFT JOIN 操作將學生表和成績表連接在一起,然後使用 GROUP BY 語句按學生的學號進行分組。在每個分組中,COUNT 函數計算選課數,SUM 函數計算總成績。
注意,這個查詢假設每個學生的學號在學生表中是唯一的。如果這個假設不成立,你可能需要修改查詢以適應你的實際情況。此外,這個查詢使用了 LEFT JOIN,因此即使某個學生沒有選課,也會在結果中顯示出來(選課數和總成績會顯示為 NULL)。如果你只想顯示至少選了一門課的學生,你可以將 LEFT JOIN 改為 JOIN。#
假設你的數據庫表結構如下:
- 成績表(Scores):學號(StudentID),課程號(CourseID),成績(Score)
你可以使用以下的 SQL 查詢語句來獲取課程編號為 2 的總成績:
SELECT SUM(Score) AS TotalScore
FROM Scores
WHERE CourseID = 2;
這個查詢首先使用 WHERE 語句篩選出課程編號為 2 的所有成績,然後使用 SUM 函數計算這些成績的總和。
注意,這個查詢假設課程編號在成績表中是一個字段。如果這個假設不成立,你可能需要修改查詢以適應你的實際情況。#
假設你的數據庫表結構如下:
- 學生表(Students):學號(StudentID),姓名(Name),等等
- 成績表(Scores):學號(StudentID),課程號(CourseID),成績(Score)
你可以使用以下的 SQL 查詢語句來獲取沒有選課的學生的學號和姓名:
SELECT Students.StudentID, Students.Name
FROM Students
LEFT JOIN Scores ON Students.StudentID = Scores.StudentID
WHERE Scores.StudentID IS NULL;
這個查詢首先通過 LEFT JOIN 操作將學生表和成績表連接在一起。然後,使用 WHERE 語句篩選出那些在成績表中沒有對應記錄的學生,也就是沒有選課的學生。
注意,這個查詢假設每個學生的學號在學生表中是唯一的,而且每個學生在成績表中的每門課都有一條記錄。如果這些假設不成立,你可能需要修改查詢以適應你的實際情況。