banner
tiaotiaotang

tiaotiaotang

互联网科技爱好者/后端开发入门,学习ing
微信公众号

力扣刷題(5月16日)

跳躍遊戲#

給定一個非負整數數組 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 語句篩選出那些在成績表中沒有對應記錄的學生,也就是沒有選課的學生。

注意,這個查詢假設每個學生的學號在學生表中是唯一的,而且每個學生在成績表中的每門課都有一條記錄。如果這些假設不成立,你可能需要修改查詢以適應你的實際情況。

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。