Leetcode Top 100 Liked Questions(序号198~234)

​198. House Robber ​

题意:你是一个强盗,你要去抢劫,每个房子都有特定金额的钱,但是不能拿相邻的房子的钱

我的思路

有点像动态规划,但是首先把每个结点空一格的后缀和得到,2n

之后从(i=n-1;i>=0;i--)dp[i]=(nums[i]-nums[i+2])+max(dp[i+2],dp[i+3]);

代码 Runtime0 ms Beats 100% Memory7.9 MB Beats 19.97%

哈哈哈这都给我做出来了.jpg

class Solution {
public:int rob(vector<int>& nums) {int n=nums.size();if(n==1)return nums[n-1];else if(n==2)return max(nums[0],nums[1]);vector<int>dp(n,0);for(int i=n-3;i>=0;i=i-2) nums[i]=nums[i]+nums[i+2];for(int i=n-4;i>=0;i=i-2) nums[i]=nums[i]+nums[i+2];dp[n-1]=nums[n-1]; dp[n-2]=nums[n-2]; dp[n-3]=nums[n-3];if(n==3)return max(nums[0],nums[1]);for(int i=n-4;i>=0;i--)dp[i]=(nums[i]-nums[i+2])+max(dp[i+2],dp[i+3]);return max(dp[0],dp[1]);}
};

标答 更简洁的动态规划

注意dp是从1开始的,因为这样,dp[i-2]就不用特判了;dp[i]表示的是在i结点之前拿到的最大的钱

状态转移方程为dp[i]=max(dp[i-1],dp[i-2]+nums[i-1]);因为当前的结点要么拿要么不拿

如果拿了,dp[i]=dp[i-2]+num[i-1];如果没拿,dp[i]=dp[i-1]

代码 Runtime 0 ms Beats 100% Memory7.9 MB Beats 6.50%

class Solution {
public:int rob(vector<int>& nums) {if(nums.size()==0)return 0;int n=nums.size(); vector<int> dp(n+1,0);dp[1]=nums[0];for(int i=2;i<=n;i++)dp[i]=max(dp[i-1],dp[i-2]+nums[i-1]);return dp[n];}
};

标答 空间更少的动态规划

不创建dp了,用prev和curr

代码 Runtime0 ms Beats 100% Memory7.7 MB Beats 76.93%

class Solution {
public:int rob(vector<int>& nums) {if(nums.size()==0)return 0;int n=nums.size(); int prev=0,curr=nums[0],tmp;for(int i=2;i<=n;i++){tmp=max(curr,prev+nums[i-1]);prev=curr; curr=tmp;}return curr;}
};

199. Binary Tree Right Side View

题意:

我的思路

先层序遍历,之后把每一层的最右边加入

看了标答 dfs也可以

代码 Runtime 0 ms Beats 100% Memory 12 MB Beats 61.69%

class Solution {
public:vector<int> rightSideView(TreeNode* root) {if(root==NULL)return {};queue<TreeNode* >q;vector<int> ans;ans.push_back(root->val);if(root->left!=NULL)q.push(root->left);if(root->right!=NULL)q.push(root->right);while(!q.empty()){int n=q.size();for(int i=0;i<n;i++){TreeNode* tmp=q.front();if(i==n-1)ans.push_back(tmp->val);if(tmp->left!=NULL)q.push(tmp->left);if(tmp->right!=NULL)q.push(tmp->right);q.pop();}}return ans;}
};

标答 DFS

ans是答案,如果root为空,return;因为一层一个答案,所以当ans需要第一个答案,id=0的时候,就把当前根的值放入;注意之后先递归right的结点,这样之后到当前层的时候可以先把这个节点的val放入ans中

代码 Runtime3 ms Beats 65.44% Memory11.9 MB Beats 81.60%

class Solution {
public:void sol(TreeNode* root,vector<int> &ans,int id){if(!root)return ;if(ans.size()==id)ans.push_back(root->val);sol(root->right,ans,id+1);//注意先递归右边sol(root->left,ans,id+1);}vector<int> rightSideView(TreeNode* root) {vector<int> ans;sol(root,ans,0);return ans;}
};

200. Number of Islands

题意:有多少片陆地,1是陆地,0是水

我的思路

BFS,看看有几次

代码 Runtime29 ms Beats 76.28% Memory18.2 MB Beats 30.61%

class Solution {
public:bool vis[302][302];void BFS(int x,int y,vector<vector<char>>& grid,int n,int m){queue <pair<int,int>>q;int dx[]={0,0,1,-1};int dy[]={1,-1,0,0};vis[x][y]=1;q.push({x,y});while(!q.empty()){int mx=q.front().first;int my=q.front().second;q.pop();for(int i=0;i<4;i++){int nx=dx[i]+mx;int ny=dy[i]+my;if(0>nx||n<=nx||0>ny||m<=ny||grid[nx][ny]=='0'||vis[nx][ny])continue;vis[nx][ny]=1;q.push({nx,ny});}}return;}int numIslands(vector<vector<char>>& grid) {int n=grid.size();int m=grid[0].size();int cnt=0;for(int i=0;i<n;i++){for(int j=0;j<m;j++){if(!vis[i][j]&&grid[i][j]!='0'){cnt++; BFS(i,j,grid,n,m);}}}return cnt;}
};

标答 DFS

标答的空间复杂度小了,其实上面的代码也可以不要vis的,grid改成2说不定也可以起到vis的效果

代码 Runtime21 ms Beats 98.21% Memory12.3 MB Beats 66.71%

class Solution {
public:void DFS(int i,int j,vector<vector<char>>& grid,int n,int m){if(0>i||n<=i||0>j||m<=j||grid[i][j]!='1')return;grid[i][j]='2';    //省去了visDFS(i+1,j,grid,n,m);DFS(i-1,j,grid,n,m);DFS(i,j+1,grid,n,m);DFS(i,j-1,grid,n,m);}int numIslands(vector<vector<char>>& grid) {int n=grid.size();int m=grid[0].size();int cnt=0;for(int i=0;i<n;i++)for(int j=0;j<m;j++)if(grid[i][j]=='1'){cnt++;DFS(i,j,grid,n,m);}return cnt;}
};

206. Reverse Linked List

题意:把链表倒过来

我的思路

递归,DFS返回的是从右到左的倒过来的指针,尾指针是返回的头部

哈哈这都被我做出来了.jpg

class Solution {
public:ListNode* DFS(ListNode* head){if(!(head->next))return head;ListNode* q=DFS(head->next);q->next=head;return head;}ListNode* reverseList(ListNode* head) {if(!head)return NULL;ListNode* tail=head;while(tail->next!=NULL)tail=tail->next;DFS(head)->next=NULL;return tail;}
};

标答 更简洁的递归

递归如图所示,主要就是head->next->next=head;head->next=NULL比较关键

h2指针从最深的递归返回后就一直没变过,所以h2就是最后的尾指针

代码 Runtime4 ms Beats 74.12% Memory8.6 MB Beats 6.1%

class Solution {
public:ListNode* reverseList(ListNode* head) {if(head == NULL || head->next == NULL) return head;ListNode* prev = NULL;ListNode* h2 = reverseList(head->next);head->next->next = head;head->next=prev;return h2;}
};

标答 不用递归

初始化一个past指针和curr指针,之后一个个向后处理;我用了三个指针让它看起来更易于理解

代码 Runtime4 ms Beats 74.12% Memory8.3 MB Beats 66.48%

class Solution {
public:ListNode* reverseList(ListNode* head){if(!head) return NULL;ListNode* past = head;ListNode* current = head -> next;past -> next = NULL;while(current){ListNode* next = current -> next;current -> next = past;past = current;current = next;}return past;}
};
class Solution {
public:ListNode* reverseList(ListNode* head) {if(head==NULL)return head;ListNode* past=NULL;ListNode* curr=head;ListNode* prev=head->next;//初始化三个指针while(curr!=NULL){curr->next=past;past=curr;curr=prev;if(curr)prev=curr->next;}return past;}
};


207. Course Schedule

题意:判断环路,用拓扑排序

我的思路

不记得拓扑排序了,首先用vector建个图,2000个结点,5000条边

prerequisites[i] = [ai, bi] indicates that you must take course bi first if you want to take course ai

有一个vector pair<int,int> 进入的次数,点的序号;【遍历一次】进入的次数为0的时候,次数记为-1,vector[点的序号]中的所有点在vector的次数-1

代码  Runtime23 ms Beats 58.79% Memory13.3 MB Beats 84.44%

一开始以为要先ai才能bi,搞反了,但ac了,想了想反正只是判断有无环

class Solution {
public:bool canFinish(int n, vector<vector<int>>& pre) {int mp[20004]={0};  vector<int>vec[20004];for(int i=0;i<pre.size();i++){vec[pre[i][1]].push_back(pre[i][0]);mp[pre[i][0]]++;//入度++}//建完了bool flag=1;int cnt=0;//flag判断是否还有为0的,cnt是消掉的点while(flag){flag=0;for(int i=0;i<n;i++){if(mp[i])continue;for(int j=0;j<vec[i].size();j++){mp[vec[i][j]]--;if(mp[vec[i][j]]==0)flag=1;}mp[i]=-1;cnt++;}}if(cnt!=n)return 0;return 1;}
};

标答 拓扑排序

首先建立邻接表,degree计算每个点的入度;之后用队列判断,先扫一遍入度表,如果为0就放到队列中;当队列不为0时,把队列中的节点一个个拿出来,之后把这个点pop掉,并且把它前往的点的入度--;如果前往的节点的入度为0,把它放到队列中;

队列为空的时候看看是否pop掉所有节点

代码 Runtime16 ms Beats 90.55% Memory13.2 MB Beats 84.44%

class Solution {
public:bool canFinish(int n, vector<vector<int>>& pre) {vector<vector<int>> vec(n, vector<int>());vector<int> mp(n, 0);for(int i=0;i<pre.size();i++){vec[pre[i][1]].push_back(pre[i][0]);mp[pre[i][0]]++;//入度++}//建完了queue<int>q;for(int i=0;i<n;i++)if(!mp[i])q.push(i);while(!q.empty()){int tmp=q.front();q.pop();n--;for(auto& p:vec[tmp]){mp[p]--;if(!mp[p])q.push(p);}}return n==0;}
};

标答 DFS 没看

DFS看上去好难,算了

代码 Runtime15 ms Beats 94.18% Memory14.7 MB Beats 17.31%

class Solution {
public:bool detectcycle(vector<vector<int>>&v,int src,vector<int>&rst,vector<int>&vis){vis[src]=1;rst[src]=1;for(auto x:v[src]){if(!vis[x]&&detectcycle(v,x,rst,vis)) return true;else if(rst[x]==1) return true;}rst[src]=0;return false;}bool canFinish(int numCourses, vector<vector<int>>& prerequisites) {vector<vector<int>>v(numCourses); stack<int>s;vector<int>vis(numCourses),rst(numCourses);for(auto x: prerequisites) v[x[1]].push_back(x[0]);for(int i=0;i<numCourses;i++){if(!vis[i])if(detectcycle(v,i,rst,vis)) return false;}return true;}
};

208. Implement Trie (Prefix Tree)

题意:建一个前缀树,实现insert,search,startwith功能

我的思路

模板题 

代码 Runtime 31 ms Beats 99.69% Memory 78.8 MB Beats 11.17%

class Trie {
public:int nxt[30904][26]={0};int cnt=0;bool ex[30904]={0};Trie() {}void insert(string word) {int p=0;for(int i=0;word[i];i++){if(!nxt[p][word[i]-'a'])nxt[p][word[i]-'a']=++cnt;p=nxt[p][word[i]-'a'];}ex[p]=1;}bool search(string word) {int p=0;for(int i=0;word[i];i++){if(!nxt[p][word[i]-'a'])return 0;p=nxt[p][word[i]-'a'];}if(ex[p])return 1;return 0;}bool startsWith(string prefix) {int p=0;for(int i=0;prefix[i];i++){if(!nxt[p][prefix[i]-'a'])return 0;p=nxt[p][prefix[i]-'a'];}return 1;}
};

标答 链表 没细看

思路差不多,主要是要建立TrieNode这个节点,要注意指针初始化为NULL

代码 Runtime 30 ms Beats 99.81% Memory 43.4 MB Beats 76.60%

class TrieNode{
public:TrieNode *child[26];bool isword;TrieNode(): isword(false){for(auto &a:child) a=nullptr;}
};
class Trie {
public:Trie() {root = new TrieNode();}void insert(string word) {TrieNode *p = root;for(auto c:word){if(p->child[c-'a'] == nullptr)p->child[c-'a'] = new TrieNode();p = p->child[c-'a'];}p->isword = true;}bool search(string word) {TrieNode *p = root;for(auto c:word){if(p->child[c-'a'] == nullptr) return false;p = p->child[c-'a'];}return p->isword;}bool startsWith(string prefix) {TrieNode *p = root;for(auto c:prefix){if(p->child[c-'a'] == nullptr) return false;p = p->child[c-'a'];}return true;}
private:TrieNode* root;
};

215. Kth Largest Element in an Array

 题意:返回数组中第K大的元素,数组中有重复元素,数组未排序,要求不排序

我的思路

直接哈希做,一共就2e4个数字

代码 Runtime61 ms Beats 96.2% Memory55.4 MB Beats 12.47%

class Solution {
public:int findKthLargest(vector<int>& nums, int k) {int vis[20001]={0};for(int q:nums) vis[q+10000]++;for(int i=20000;i>=0;i--){k=k-vis[i];if(k<=0)return i-10000;}return -1;}
};

标答 优先队列

stl的优先队列最小堆greater,先给前k个建堆;之后遍历剩下的数组,如果数组v[i]比q.top()小,就把q.top()弹出,v[i]加入,最后返回堆顶就可以了

代码 Runtime 88 ms Beats 59.41% Memory 56.4 MB Beats 11.13%

class Solution {
public:int findKthLargest(vector<int>& v, int k) {priority_queue<int,vector<int>,greater<int> >q(v.begin(),v.begin()+k);for(int i=k;i<v.size();i++){//是从k开始if(q.top()<v[i]){q.pop();q.push(v[i]);}}return q.top();}
};

标答 Quicksort TLE

虽然不知道为什么TLE了,但是理论上这个是O(n);注意find的输出是第k小,k从0开始

原理:因为快排一次(假设排序是从小到大的)可以确定一个位置,这个位置tmp的左边都是比它小的,右边都是大于等于它的;

如果tmp==k,返回a[tmp];如果tmp+1>k,find(left, tmp-1);如果tmp+1<k,find(tmp+1, right)

代码 TLE 不过听说随机化快排能过,之后研究一下

class Solution {
public:int quicksort(vector<int>& a,int left,int right){int mid=a[left];while (left<right){while (left<right&&mid<=a[right]) right--;a[left] = a[right];while (left<right&&a[left]<=mid)left++;a[right] = a[left];}a[left]=mid;return left;}int find(vector<int>& a,int left, int right, int k){	int tem=quicksort(a,left,right);if(k==tem) return a[k];else if(k-1<tem) return find(a,left,tem-1,k);return find(a,tem+1,right,k);}int findKthLargest(vector<int>& v, int k) {ios::sync_with_stdio(0);cin.tie(0);int n=v.size();return find(v,0,n-1,n-k);}
};

226. Invert Binary Tree

 题意:

我的思路

递归,类似于第101题 Leetcode Top 100 Liked Questions(序号75~104)

但是对于这个例子不知道怎么做,我只知道swap值

root=[1, 2],Expected=[1,null,2]

看了标答后:swap时,应该是swap(root->left, root->right),而不是swap(l, r)

标答 DFS

不得不说,它确实和101题不太一样

代码 Runtime0 ms Beats 100% Memory 9.7 MB Beats 65.11%


class Solution {
public:TreeNode* invertTree(TreeNode* root) {if (root) {invertTree(root->left);invertTree(root->right);swap(root->left, root->right);}return root;}
};

看了标答后,我修改了我蹩脚的代码

class Solution {
public:void sol(TreeNode* r){if(r->left==NULL&&r->right==NULL)return;swap(r->left,r->right); if(r->left==NULL) sol(r->right);else if(r->right==NULL) sol(r->left);else{sol(r->right);sol(r->left);}}TreeNode* invertTree(TreeNode* root) {if(!root)return root;sol(root); return root;}
};

标答 不递归 用栈(队列也可以)

类似于层序遍历

代码 Runtime0 ms Beats 100% Memory9.9 MB Beats 5.3%

class Solution {
public:TreeNode* invertTree(TreeNode* root) {stack<TreeNode*> stk;stk.push(root);    while (!stk.empty()) {TreeNode* p = stk.top();stk.pop();if (p) {stk.push(p->left);stk.push(p->right);swap(p->left, p->right);}}return root;}
};

230. Kth Smallest Element in a BST

题意:给一个二叉排序树,给出第K小的元素

我的思路

根据第215题,做法有哈希,优先队列

因为是排序树,所以中序序列就是顺序

所以中序遍历一遍就可以了

代码 Runtime7 ms Beats 98.62% Memory24.1 MB Beats 71.82%

用来两个引用

class Solution {
public:void dfs(TreeNode* root,int &k,int& ans){if(root==NULL||ans!=-1)return ;dfs(root->left,k,ans);k--;if(k==0)ans=root->val;dfs(root->right,k,ans);}int kthSmallest(TreeNode* root, int k) {int ans=-1;dfs(root,k,ans);return ans;}
};

234. Palindrome Linked List

题意:看看链表是不是回文的

我的思路

可以用vector.map 也许递归也可以,结点个数1e5

不会dfs,用vector吧

代码 Runtime 187 ms Beats 66.11% Memory 128.3 MB Beats 20.36%

class Solution {
public:vector<int>ans;bool isPalindrome(ListNode* head) {ListNode* p=head;while(p!=NULL){ans.push_back(p->val);p=p->next;}int n=ans.size();for(int i=0;i<n;i++){if(ans[i]!=ans[n-i-1]) return 0;}return 1;}
};

标答 Reverse 

标答说可以用Reverse,那么就可以206的方法做这题,不过这样破坏了原来的链表,写到一半不想写了,Reverse的思路是用快慢指针找到中点,之后两端都指向中点,最后slow到尾,fast=head,两遍同时向中间遍历判断

直接贴上来,不自己写了

代码 Runtime 117 ms Beats 99.85% Memory 110.4 MB Beats 98.10% 

class Solution {
public:bool isPalindrome(ListNode* head) {ListNode* slow = head; ListNode* fast = head;ListNode* prev, * next = new ListNode();while(fast && fast -> next){slow = slow -> next;fast = fast -> next -> next;next = head -> next;head -> next = prev;prev = head;head = next;}if(fast) slow = slow -> next;head = prev;while(slow){if(slow->val!=head->val) return false;slow = slow -> next; head = head -> next;}return true;}
};

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

macos 不支持svn安装

macos 10.13可能不支持svn命令,所以要安装 xcode-select --install 弹窗在线安装失败的话只能手动下载安装 打开:Sign In - Apple 搜索Command Line Tools (macOS 10.13) 下载9.4.1版本直接安装后即可

线性表之-单向链表(无头)

目录 什么是单向链表 顺序表和链表的区别和联系 顺序表&#xff1a; 链表&#xff1a; 链表表示(单项)和实现 1.1 链表的概念及结构 1.2单链表(无头)的实现 所用文件 将有以下功能&#xff1a; 链表定义 创建新链表元素 尾插 头插 尾删 头删 查找-给一个节点的…

快速学会git版本管理——上传gitee仓库

首先在gitee右上角有一个新建仓库 创建之后打开自己想要上传的文件 右键打开 Git Bash Here 接下来会弹出git的窗口 首先先初始化仓库 用git命令 git init 然后用git add . 上传所有文件上传到暂存区(上一篇文章说过add是单个文件&#xff0c;add . 是所有文件) 没有显示错误 …

almaLinux 8 安装 xxdiff 5.1

almaLinux 安装 xxdiff XXdiff——比较和合并工具下载安装安装qt5 XXdiff——比较和合并工具 XXdiff是一款免费、强大的文件和目录比较及合并工具&#xff0c;可以在类似Unix的操作系统上运行&#xff0c;比如Linux、Solaris、HP/UX、IRIX和DEC Tru64。XXdiff的一大局限就是不…

【枚举区间+线段树】CF Ehu 152 E

Problem - E - Codeforces 题意&#xff1a; 思路&#xff1a; 感觉是个套路题 对区间计数&#xff0c;按照CF惯用套路&#xff0c;枚举其中一个端点&#xff0c;对另一个端点计数 对于这道题&#xff0c;枚举右端点&#xff0c;对左端点计数 Code&#xff1a; #include &…

无涯教程-Android Online Test函数

Android在线测试模拟了真正的在线认证考试。您将看到基于 Android概念的多项选择题(MCQ),将为您提供四个options。您将为该问题选择最合适的答案,然后继续进行下一个问题,而不会浪费时间。完成完整的考试后,您将获得在线考试分数。 总问题数-20 最长时间-20分钟 Start Test …

楼兰图腾——树状数组

在完成了分配任务之后&#xff0c;西部 314 来到了楼兰古城的西部。 相传很久以前这片土地上(比楼兰古城还早)生活着两个部落&#xff0c;一个部落崇拜尖刀(V)&#xff0c;一个部落崇拜铁锹(∧)&#xff0c;他们分别用 V 和 ∧ 的形状来代表各自部落的图腾。 西部 314 在楼兰古…

【leetcode 力扣刷题】数学题之除法:哈希表解决商的循环节➕快速乘求解商

两道和除法相关的力扣题目 166. 分数到小数29. 两数相除快速乘解法一&#xff1a;快速乘变种解法二&#xff1a; 二分查找 快速乘 166. 分数到小数 题目链接&#xff1a;166. 分数到小数 题目内容&#xff1a; 题目是要我们把一个分数变成一个小数&#xff0c;并以字符串的形…

uni-app 之 v-on:click点击事件

uni-app 之 v-on:click点击事件 image.png <template><!-- vue2的<template>里必须要有一个盒子&#xff0c;不能有两个&#xff0c;这里的盒子就是 view--><view>--- v-on:click点击事件 ---<view v-on:click"onclick">{{title}}<…

周赛361(模拟、枚举、记忆化搜索、统计子数组数目(前缀和+哈希)、LCA应用题)

文章目录 周赛361[2843. 统计对称整数的数目](https://leetcode.cn/problems/count-symmetric-integers/)模拟 [2844. 生成特殊数字的最少操作](https://leetcode.cn/problems/minimum-operations-to-make-a-special-number/)记忆化搜索枚举 [2845. 统计趣味子数组的数目](http…

港陆证券:五日线破位怎么看?

在股票交易中&#xff0c;五日线是个重要的技术指标之一&#xff0c;它能够反映出最近的商场趋势。假如五日线破位&#xff0c;这意味着商场呈现了趋势反转&#xff0c;出资者需求注重趋势改动&#xff0c;并采取相应的出资战略。 首先&#xff0c;咱们来看看五日线破位的原因…

2022年09月 C/C++(八级)真题解析#中国电子学会#全国青少年软件编程等级考试

C/C编程&#xff08;1~8级&#xff09;全部真题・点这里 第1题&#xff1a;道路 N个以 1 … N 标号的城市通过单向的道路相连:。每条道路包含两个参数&#xff1a;道路的长度和需要为该路付的通行费&#xff08;以金币的数目来表示&#xff09; Bob and Alice 过去住在城市 1.…

每日一题——旋转图像

旋转图像 题目链接 方法一&#xff1a;利用辅助数组 通过对示例的观察和分析&#xff0c;我们可以得到这样的结论&#xff1a; 对于原数组的下标为i行元素&#xff0c;顺时针旋转九十度后&#xff0c;都变成了下标为&#xff08;n-1-i&#xff09;列元素。如图所示&#xff…

es倒排索引深入解读

文章目录 一. Lucene二.倒排索引算法2.1 Posting List压缩算法2.1.1 FOR2.1.2 RoaringBitmap压缩 2.3 FST压缩算法2.3.1 trie前缀树原理2.3.2 FST构建过程NFADFAFSMFSAFST:有限状态转换机构建原理FST在lucene中实现原理 1.什么是搜索引擎? 全文搜索引擎: 自然语言处理(NLP)、爬…

关于git约定式提交IDEA

背景 因为git提交的消息不规范导致被乱喷&#xff0c;所以领导统一规定了约定式提交 官话 约定式提交官网地址 约定式提交规范是一种基于提交信息的轻量级约定。 它提供了一组简单规则来创建清晰的提交历史&#xff1b; 这更有利于编写自动化工具。 通过在提交信息中描述功能…

docker使用(一)生成,启动,更新(容器暂停,删除,再生成)

docker使用&#xff08;一&#xff09; 编写一个 Dockerfile构建镜像构建失败构建成功 运行镜像运行成功 修改代码后再次构建请不要直接进行构建&#xff0c;要将原有的旧容器删除或暂停停止成功删除成功再次构建且构建成功&#xff01; 要创建一个镜像&#xff0c;你可以按照以…

stable diffusion实践操作-hypernetworks

系列文章目录 本文专门开一节写hypernetworks的内容&#xff0c;在看之前&#xff0c;可以同步关注&#xff1a; stable diffusion实践操作 提示&#xff1a;写完文章后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 系列文章目录前言一、h…

CSS中如何实现元素的旋转和缩放效果?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 元素的旋转和缩放效果⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅&#xff01;这个专栏是为那些对Web开发感兴趣、刚刚踏…

【Unity3D】UI Toolkit元素

1 前言 UI Toolkit简介 中介绍了 UI Builder、样式属性、UQuery、Debugger&#xff0c;UI Toolkit容器 中介绍了 VisualElement、ScrollView、ListView、GroupBox 等容器&#xff0c;UI Toolkit样式选择器 中介绍了简单选择器、复杂选择器、伪类选择器等样式选择器&#xff0c;…

韩老师java教程

基础知识 进制 进制首位表示方式二进制0B十进制无八进制0十六进制0X 进制转换 x进制转十进制 正常&#xff0c;没什么问题 十进制转x进制 将该数不断除以x&#xff0c;直到商为0为止&#xff0c;然后将每一步得到的余数倒过来&#xff0c;就是对应的x进制 二进制转八进…