1、数组

1.1 11. 盛最多水的容器

题解:
左右两个指针移动,算出其中的面积,最大的就是结果。
实现

var maxArea = function (height) {if (!height || height.length<=1)  return 0let left = 0,right = height.length-1;//左右两个指针let max = 0;//最大值while (left<right) {// 计算const area = Math.abs(right-left)*Math.min(height[left],height[right])if (max<area) {max = area}if (height[left]<height[right]) {left++ // 左指针右移}else{right-- // 右指针左移}}return max
};

1.2 283. 移动零

题解:
从后向前,查找是0,就把当前位置移动到最后。注意:这里不能从前面开始.

var moveZeroes = function(nums) {for (let i = nums.length-1; i >=0; i--) {if (nums[i]===0) {nums.splice(i,1)nums.push(0)}}return nums;
};

其他方法:
从前往后遍历,加个计数器(从0开始),不是0的存起来,计数器+1,
遍历完后,跟原数组长度对比,差几个补几个0.

1.3 70.爬楼梯

题解:
1、递归求解 会超时
2、将每个台阶的步数保存在一个数组里。

var climbStairs = function(n) {// if (n==0) return 0;// if(n==1) return 1// if(n==2) return 2// return climbStairs(n-1)+climbStairs(n-2)let step = [];step[0] = 1;step[1] = 1;for (let i = 2; i <= n; i++) {step[i] = step[i-1]+step[i-2]}return step[n]
};

1.4 15.三数之和

var threeSum = function (nums) {nums.sort((a, b) => a - b)let res = [];let len = nums.length;if (nums[0] <= 0 && nums[len - 1] >= 0) {//三数之和才可能为零let i = 0;while (i < len - 2) {if (nums[i] > 0) break; //最左侧的值大于0  三数和不可能为0let first = i + 1;let last = len - 1;while (first < last) {if (nums[i] * nums[last] > 0) break;//三个数同符号 无解let sum = nums[i] + nums[first] + nums[last]if (sum === 0) {res.push([nums[i], nums[first], nums[last]])}if (sum < 0) {while (nums[first] === nums[++first]) { }} else {while (nums[last] === nums[--last]) { }}}while (nums[i] == nums[++i]) { }}}return res;
}

1.5 88-合并两个有序数组

题解:
将数组2添加到数组1,排序

var merge = function(nums1, m, nums2, n) {for (let i = 0; i < n; i++) {nums1[m+i] = nums2[i]}nums1.sort((a,b)=>a-b)};

1.6 189旋转数组

题解:末尾弹出 添加到头部

var rotate = function(nums, k) {for (let i = 0; i < k; i++) {nums.unshift(nums.pop())}return nums;
};

1.7 26.删除排序数组中的重复项

var removeDuplicates = function(nums) {let slow = 0, len = nums.length;for (let fast = 0; fast <len; fast++) {if (nums[slow]!==nums[fast]) {slow++nums[slow] = nums[fast]} }return slow+1
};

2、链表 Linked List

2.1 21.合并两个有序链表

题解:利用递归的方式 合并

var mergeTwoLists = function(l1, l2) {if (l1===null) return l2;if (l2===null) return l1;if(l1.val < l2.val){l1.next = mergeTwoLists(l1.next,l2)return l1}else{l2.next = mergeTwoLists(l1,l2.next)return l2}
};

2.2 206.反转链表

题解: 将单链表中的每个节点的后继指针指向它的前驱节点即可


var reverseList = function(head) {let pre = nulllet cur = head;while(cur){let next = cur.next;cur.next = pre;pre = cur;cur=next;}return pre
};

2.3 24.两两交换链表中的节点

var swapPairs = function(head) {if(head==null||head.next==null) return head;let next = head.next;// 获得第 2 个节点head.next = swapPairs(next.next)  // 第1个节点指向第 3 个节点,并从第3个节点开始递归next.next = head; // 第2个节点指向第 1 个节点return next;
};

2.4 141. 环形链表

题解 标记法

var hasCycle = function(head) {while(head){if (head.flag) {return true}else{head.flag = '1'head = head.next}}return false
};

2.5 142 环形链表 II

同2.4 只是返回数据类型不同

var detectCycle = function(head) {while(head){if (head.flag) {return head}else{head.flag = '1'head= head.next}}return null
};

2.6 25.K 个一组翻转链表

var reverseKGroup = function (head, k) {let dummy = new ListNode();dummy.next = head;let [start,end] = [dummy,dummy.next]let count = 0;while(end){count++if (count%k === 0) {start = reverseList(start,end.next)end = start.next}else{end = end.next}}return dummy.next;
};function reverseList(start,end){let [pre,cur] = [start,start.next]const first = cur;while (cur!==end) {let next = cur.next;cur.next = pre;pre = cur;cur=next}start.next = pre;first.next = cur;return first
}

3、栈和队列

3.1 155. 最小栈

题解:利用数组实现

var MinStack = function() {this.arr = []
};/** * @param {number} x* @return {void}*/
MinStack.prototype.push = function(x) {this.arr.push(x)
};/*** @return {void}*/
MinStack.prototype.pop = function() {this.arr.pop()
};/*** @return {number}*/
MinStack.prototype.top = function() {return this.arr[this.arr.length-1]
};/*** @return {number}*/
MinStack.prototype.getMin = function() {return Math.min(...this.arr)
};

3.2 20 有效的括号

var isValid = function(s) {let stack = [];for (let i = 0; i < s.length; i++) {if (s[i]=='['||s[i]=='('||s[i]=='{') {stack.push(s[i])}else{let left = stack.pop();if (left=='['&&s[i]==']'||left=='('&&s[i]==')'||left=='{'&&s[i]=='}') {}else{return false}}}return stack.length === 0
}; 

3.3 84柱状图中最大的矩形

var largestRectangleArea = function (heights) {let ans = 0,stack = [];heights.unshift(0)heights.push(0)for (let i = 0; i < heights.length; i++) {while (stack.length&&heights[stack[stack.length-1]]>heights[i]) {const currentHeight = stack.pop();const right = i,left = stack[stack.length-1]+1ans = Math.max(ans,(right-left)*heights[currentHeight])         }stack.push(i)}return ans
};

3.4 239.滑动窗口最大值

var maxSlidingWindow = function(nums, k) {// 暴力破解// let num = []// for (let i = 0; i < nums.length-k+1; i++) {//     let arr = []//     for (let j = i; j < k+i; j++) {//         arr.push(nums[j])//     }//     num.push(Math.max(...arr))// }// return numlet n = nums.length;class slideWindow{constructor(){this.data = []}push(val){let data = this.data;while(data.length>0&&data[data.length-1]<val){data.pop()}data.push(val)}pop(val){let data = this.dataif(data.length>0&&data[0]===val){data.shift()}}max(){return this.data[0]}}let res = [];let window = new slideWindow();for (let i = 0; i < n; i++) {if(i<k-1){window.push(nums[i])} else{window.push(nums[i])res.push(window.max())window.pop(nums[i-k+1])}}return res;
};

3.5 641.设计循环双端队列

var MyCircularDeque = function(k) {this.queue = new Array();this.size = k;
};/*** Adds an item at the front of Deque. Return true if the operation is successful. * @param {number} value* @return {boolean}*/
MyCircularDeque.prototype.insertFront = function(value) {if (this.queue.length === this.size) {return false}else{this.queue.unshift(value);return true}};/*** Adds an item at the rear of Deque. Return true if the operation is successful. * @param {number} value* @return {boolean}*/
MyCircularDeque.prototype.insertLast = function(value) {if (this.queue.length === this.size){return false}else{this.queue.push(value)return true}};/*** Deletes an item from the front of Deque. Return true if the operation is successful.* @return {boolean}*/
MyCircularDeque.prototype.deleteFront = function() {if (this.queue.length <= 0){return false}else{this.queue.shift()return true}
};/*** Deletes an item from the rear of Deque. Return true if the operation is successful.* @return {boolean}*/
MyCircularDeque.prototype.deleteLast = function() {if (this.queue.length <= 0){return false}else{this.queue.pop()return true}
};/*** Get the front item from the deque.* @return {number}*/
MyCircularDeque.prototype.getFront = function() {if (this.queue.length<=0) {return -1}return this.queue[0]
};/*** Get the last item from the deque.* @return {number}*/
MyCircularDeque.prototype.getRear = function() {if (this.queue.length<=0) {return -1}return this.queue[this.queue.length-1]
};/*** Checks whether the circular deque is empty or not.* @return {boolean}*/
MyCircularDeque.prototype.isEmpty = function() {return this.queue.length === 0
};/*** Checks whether the circular deque is full or not.* @return {boolean}*/
MyCircularDeque.prototype.isFull = function() {return this.queue.length === this.size;
};

3.6 42.接雨水

var trap = function(height) {if(!height||height.length===0) return 0;let sum = 0;for (let i = 1; i < height.length-1; i++) {let max_left = 0;for(let j=i-1;j>=0;j--){max_left = Math.max(max_left,height[j])}let max_right = 0;for (let j = i+1; j < height.length; j++) {max_right = Math.max(max_right,height[j])}let min = Math.min(max_left,max_right)if (min>height[i]) {sum+=min-height[i]}}return sum 
};

4、哈希表、映射、集合

4.1 242.有效的字母异位词

var isAnagram = function(s, t) {return s.split('').sort().join('') === t.split('').sort().join('') 
};

4.2 49.字母异位词分组

var groupAnagrams = function(strs) {let map = new Map();strs.forEach(str=>{let s = str.split('').sort().join();if(map.has(s)){let tmp = map.get(s);tmp.push(str)map.set(s,tmp)}else{map.set(s,[str])}})return [...map.values()]
};

4.3 1.两数之和

var twoSum = function(nums, target) {// 暴力破解// for (let i = 0; i < nums.length; i++) {//    for (let j = i+1; j < nums.length; j++) {//       if(nums[i]+nums[j]===target){//             return [i,j]//       }//    }// }// 空间换时间let temp = [];for (let i = 0; i < nums.length; i++) {let next = target - nums[i]if (temp[next]!==undefined) {return [temp[next],i]}else{temp[nums[i]] = i}}
};

5、树、二叉树、二叉搜索树

5.1 94.二叉树的中序遍历

var inorderTraversal = function(root,res=[]) {if(root===null) return res;inorderTraversal(root.left,res)res.push(root.val)inorderTraversal(root.right,res)return res
};

5.2 144.二叉树的前序遍历

var preorderTraversal = function(root,arr=[]) {if(root==null) return arr;arr.push(root.val)preorderTraversal(root.left,arr)preorderTraversal(root.right,arr)return arr};// var preorderTraversal = function(root) {//   let result = [];//   let stack = [];//   let cur = root;//   while (cur||stack.length>0) {//       while (cur) {//           result.push(cur.val)//           stack.push(cur)//           cur = cur.left//       }//       cur = stack.pop();//       cur = cur.right;//   }//     return result// };

5.3 590.N叉树的后序遍历

var postorder = function(root,arr=[]) {if (root == null) return arr;for (let i = 0; i < root.children.length; i++) {postorder(root.children[i],arr)}arr.push(root.val)return arr
};

5.4 589.N叉树的前序遍历

var preorder = function(root,arr=[]) { //迭代if(root==null) return arr;arr.push(root.val)for (let i = 0; i < root.children.length; i++) {preorder(root.children[i],arr)}return arr// if(!root) return []// let res = [],arr =[root]// while (arr.length) {//     let current = arr.pop();//     res.push(current.val)//     for (let i = current.children.length-1; i >=0; i--) {//        arr.push(current.children[i])//     }// }// return res;
};

5.5 429. N叉树的层序遍历

var levelOrder = function(root) {let nums = [];search(nums,root,0)return nums;
};function search(nums,root,k){if (root==null) return ;if (nums[k] === undefined) {nums[k] = []}nums[k].push(root.val)for (let i = 0; i < root.children.length; i++) {search(nums,root.children[i],k+1)}
}

5.6 105 从前序与中序遍历序列构造二叉树

var buildTree = function(preorder, inorder) {if (!inorder.length) return null;let tmp = preorder[0],mid = inorder.indexOf(tmp)let root = new TreeNode(tmp)root.left = buildTree(preorder.slice(1,mid+1),inorder.slice(0,mid))root.right = buildTree(preorder.slice(mid+1),inorder.slice(mid+1))return root
};

6、堆、二叉堆、图

6.1 面试题40. 最小的k个数

  var getLeastNumbers = function(arr, k) {let len = arr.lengthif (!len || !k) return []let heap = new Heap()// 建立最小堆,O(N) 复杂度heap.init(arr)let res = []while (k) {// 依次从堆顶弹出最小元素,O(logN) 复杂度res.push(heap.delete())k--}return res}function Heap() {this.heap = [-Infinity]}Heap.prototype.init = function(arr) {this.heap = [-Infinity]this.heap.push(...arr)let size = arr.length// 从最后一个元素的父节点开始实现最小堆,类似删除操作中将最后一个元素放在堆顶进行调整。for (let pos = parseInt(size / 2); pos > 0; pos--) {let tmp = this.heap[pos]let parent, childfor (parent = pos; parent * 2 <= size; parent = child) {child = parent * 2if (child + 1 <= size && this.heap[child + 1] < this.heap[child]) child++if (tmp < this.heap[child]) breakelse this.heap[parent] = this.heap[child]}this.heap[parent] = tmp}}Heap.prototype.delete = function() {let size = this.heap.length - 1let res = this.heap[1]// 拿到最后一个元素let tmp = this.heap[size]this.heap.length--size--// 将最后一个元素放在堆顶,并调整最小堆let parent, childfor (parent = 1; parent * 2 <= size; parent = child) {child = parent * 2if (child + 1 <= size && this.heap[child + 1] < this.heap[child]) child++if (tmp < this.heap[child]) breakelse this.heap[parent] = this.heap[child]}this.heap[parent] = tmpreturn res}

6.2 前 K 个高频元素

var topKFrequent = function(nums, k) {let map = new Map()nums.forEach(item=>{if (map.get(item)) {map.set(item,map.get(item)+1)}else{map.set(item,1)}})let arr = [...map.entries()].sort((a,b)=>b[1]-a[1])let res = []for (let i = 0; i < k; i++) {res.push(arr[i][0])}return res;
};

6.3 239. 滑动窗口最大值

同3.4

6.4 面试题49. 丑数

var nthUglyNumber = function(n) {let p2 = p3 = p5 = 0;let uglyArr = [];uglyArr[0] = 1;for(let i = 1; i<n;i++){let nextP2 = uglyArr[p2]*2;let nextP3 = uglyArr[p3]*3;let nextP5 = uglyArr[p5]*5;let nextUgly = Math.min(nextP2,nextP3,nextP5)uglyArr.push(nextUgly)if(nextUgly === nextP2) p2++;if(nextUgly === nextP3) p3++;if(nextUgly === nextP5) p5++;}return uglyArr[n-1]
};

6.5 图 200. 岛屿数量

var numIslands = function(grid) {let num =0;if (grid&&grid.length) {const maxI = grid.length-1,maxJ=grid[0].length-1;function overturn(i,j) {if (i<0||j<0||i>maxI||j>maxJ) return;if (grid[i][j]==='1') {grid[i][j] = '0';overturn(i,j-1)overturn(i-1,j)overturn(i+1,j)overturn(i,j+1)}}for (let i = 0; i < grid.length; i++) {for (let j = 0; j < grid[i].length; j++) {if (grid[i][j]==='1') {num++;overturn(i,j)}}}   }return num;
};

7、泛型递归、树的递归

7.1 70. 爬楼梯

var climbStairs = function(n) {// if (n==0) return 0;// if(n==1) return 1// if(n==2) return 2// return climbStairs(n-1)+climbStairs(n-2)let step = [];step[0] = 1;step[1] = 1;for (let i = 2; i <= n; i++) {step[i] = step[i-1]+step[i-2]}return step[n]
};

7.2 22. 括号生成

var generateParenthesis = function(n) {let res = [];const help = (cur,left,right)=>{if (cur.length === 2*n) {res.push(cur)return}if (left<n) {help(cur+"(",left+1,right)}if (right<left) {help(cur+')',left,right+1)}}help('',0,0)return res
};

7.3 226. 翻转二叉树

var invertTree = function(root) {if (root==null) {return root}[root.left,root.right] = [invertTree(root.right),invertTree(root.left)]return root
};

7.4 98. 验证二叉搜索树

var isValidBST = function(root) {let sortArr = preorderTraversal(root)for (let i = 0; i < sortArr.length-1; i++) {if (sortArr[i+1]<=sortArr[i]) {return false} }return true
};
var preorderTraversal = function(root,arr=[]){if (root == null) {return arr}preorderTraversal(root.left,arr)arr.push(root.val)preorderTraversal(root.right,arr)return arr
}

7.5 104. 二叉树的最大深度

var maxDepth = function(root) {if (!root) return 0return Math.max(maxDepth(root.left),maxDepth(root.right))+1
};

7.6 111. 二叉树的最小深度

var minDepth = function(root) {if (root == null) {return 0}if(root.left == null && root.right == null){return 1}let ans = Number.MAX_SAFE_INTEGER;if (root.left != null) {ans = Math.min(minDepth(root.left),ans)}if (root.right != null) {ans = Math.min(minDepth(root.right),ans)}return ans+=1
};

7.7 297. 二叉树的序列化与反序列化

var serialize = function(root) {if(!root) return '[]'let res = '';let node = root;const queue = [node];while(queue.length){const front = queue.shift();if (front) {res+=`${front.val},`queue.push(front.left)queue.push(front.right)}else{res+='#,'}}res = res.substring(0,res.length-1)return `[${res}]`
};var deserialize = function(data) {if(data.length<=2) return null;const nodes = data.substring(1,data.length-1).split(',');const root = new TreeNode(parseInt(nodes[0]))nodes.shift();const queue = [root]while (queue.length) {const node = queue.shift();const leftVal = nodes.shift();if(leftVal!='#'){node.left = new TreeNode(leftVal)queue.push(node.left)}const rightVal = nodes.shift();if(rightVal!=='#'){node.right = new TreeNode(rightVal)queue.push(node.right)}}return root;
};

7.8 236. 二叉树的最近公共祖先

var lowestCommonAncestor = function(root, p, q) {if(root == null||root === p||root === q) return rootlet left = lowestCommonAncestor(root.left,p,q)let right = lowestCommonAncestor(root.right,p,q)return left === null?right:right===null?left:root
};

7.9 105. 从前序与中序遍历序列构造二叉树

var buildTree = function(preorder, inorder) {if(!inorder.length) return null;let tmp = preorder[0],mid = inorder.indexOf(tmp);let root = new TreeNode(tmp)root.left = buildTree(preorder.slice(1,mid+1),inorder.slice(0,mid))root.right = buildTree(preorder.slice(mid+1),inorder.slice(mid+1))return root
};

7.10 77. 组合

var combine = function(n, k) {let res = [];let subres = [];function combineSub(start,subres) {if(subres.length==k){res.push(subres.slice(0))return}var len = subres.length;for (let i = start; i <= n-(k-len)+1; i++) {subres.push(i)combineSub(i+1,subres)subres.pop()}}combineSub(1,subres)return res
};

7.11 46. 全排列

var permute = function (nums) {let list = [];backtrack(list,[],nums)return list;
};
function backtrack(list,temp,nums){if(temp.length == nums.length) return list.push([...temp])for (let i = 0; i < nums.length; i++) {if(temp.includes(nums[i])) continue;temp.push(nums[i])backtrack(list,temp,nums)temp.pop()}
}

7.12 47. 全排列 II

var permuteUnique = function(nums) {if(nums===null) return;nums.sort((a,b)=>a-b)const res = [];cal(nums,0,res)return res
};const swap = (nums,i,j)=> {if(i===j) returnconst t = nums[i]nums[i] = nums[j]nums[j] = t
}
const cal = (nums,first,result)=>{if(nums.length === first){result.push([...nums])return;}const map = new Map();for (let i = first; i < nums.length; i++) {if(!map.get(nums[i])){map.set(nums[i],true)swap(nums,first,i)cal(nums,first+1,result)swap(nums,first,i)}}
}

8、分治、回溯

8.1 50. Pow(x, n)

var myPow = function(x, n) {if(n<0) return 1/myPow(x,-n)if(n===0) return 1;if(n%2===0) return myPow(x*x,Math.floor(n/2))return myPow(x*x,Math.floor(n/2))*x
};

8.2 78.子集

var subsets = function(nums) {let n = nums.length;let tmpPath = [];let res = [];let backtrack = (tmpPath,start)=>{res.push(tmpPath)for (let i = start; i < n; i++) {tmpPath.push(nums[i])backtrack(tmpPath.slice(),i+1)tmpPath.pop()}}backtrack(tmpPath,0)return res;
};

8.3 169. 多数元素

var majorityElement = function(nums) {nums.sort((a,b)=>a-b)return nums[Math.floor(nums.length/2)]
};
// 投票算法
var majorityElement = function(nums) {let count = 1;let majority = nums[0];for (let i = 1; i < nums.length; i++) {if(count === 0){majority = nums[i]}if(nums[i] === majority){count++}else{count--}}return majority
};

8.4 17. 电话号码的字母组合

var letterCombinations = function(digits) {let result = [];if(digits.length == 0) return [];let numMap = {2:'abc',3:'def',4:'ghi',5:'jkl',6:'mno',7:'pqrs',8:'tuv',9:'wxyz'}for (const code of digits) {let word = numMap[code]if (result.length>0) {let tmp = [];for (const char of word) {for (const old of result) {tmp.push(old+char)}}result = tmp}else{result.push(...word)}}return result
};

8.5 51. N皇后

var solveNQueens = function(n) {// 行不能一样 按行查找// 列不能一样// 行-列不能一样 // 行+列不能一样// tmp 为了记录之前的路径 tmp的索引是行数据 值是列数据 摆放的是棋子let ret = [];find(0)return ret;function find(row,tmp=[]) {if (row === n) {ret.push(tmp.map(c=>{let arr = new Array(n).fill('.')arr[c] = 'Q'return arr.join('')}))}for (let col = 0; col < n; col++) {let canSet = tmp.some((ci,ri)=>{return ci===col||(ri-ci)===(row-col)||(ri+ci)===(row+col)})if (canSet) continue;find(row+1,[...tmp,col])}}};

9、深度优先、广度优先

9.1 102. 二叉树的层序遍历

var levelOrder = function (root){if(root===null) return [];let res = [];let queue = [root];let level = 0;while(queue.length){let num = queue.length;res[level]= [];while(num--){let cur = queue.shift();res[level].push(cur.val)if(cur.left) queue.push(cur.left)if(cur.right) queue.push(cur.right)}level++}return res;
}

9.2 433. 最小基因变化

var minMutation = function(start, end, bank) {let bankSet = new Set(bank);if(!bankSet.has(end)) return -1;let queue = [[start,0]]let dna = ['A','C','G','T'];while(queue.length){let [node,count] = queue.shift();if(node === end) return count;for (let i = 0; i < node.length; i++) {for (let j = 0; j < dna.length; j++) {let d = node.slice(0,i) + dna[j] + node.slice(i+1)if (bankSet.has(d)) {queue.push([d,count+1])bankSet.delete(d)}}}}return -1;
};

9.3 22. 括号生成

var generateParenthesis = function (n) {let res = [];const help = (cur,left,right)=>{if (cur.length === 2*n) {res.push(cur)return}if(left <n){help(cur+'(',left+1,right)}if (right<left) {help(cur+')',left,right+1)}}help('',0,0)return res;
};

9.4 515 在每个树行中找最大值

var largestValues = function(root) {if(root === null) return []let res = [];let level = 0;let queue = [root]let result = [];while(queue.length){res[level] = [];let num = queue.length;while (num--) {let cur = queue.shift();res[level].push(cur.val);if(cur.left) queue.push(cur.left)if(cur.right) queue.push(cur.right)}result.push(Math.max(...res[level]))level++}return result
};

9.5 127. 单词接龙

var ladderLength = function(beginWord, endWord, wordList) {let wordSet = new Set(wordList);if(!wordSet.has(endWord)) return 0;let queue = [[beginWord,1]]while(queue.length){let [word,transNumber] = queue.pop();if(word === endWord) return transNumber;for (const str of wordSet) {if(charDiff(word,str)===1){queue.unshift([str,transNumber+1])wordSet.delete(str)}}}return 0;
};const charDiff = (str1,str2)=>{let changes = 0;for (let i = 0; i < str1.length; i++) {if (str1[i]!=str2[i])  changes+=1}return changes;
}

9.6 126. 单词接龙 II

var findLadders = function(beginWord, endWord, wordList) {let wordSet = new Set(wordList);if(!wordSet.has(endWord)) return [];wordSet.delete(beginWord);let beginSet = new Set([beginWord]);let map = new Map();let distance = 0;let minDistance = 0;while (beginSet.size) {if (beginSet.has(endWord)) break;let trySet = new Set();for (const word of beginSet) {let mapSet = new Set();for (let i = 0; i < word.length; i++) {for (let j = 0; j < 26; j++) {let tryWord = word.slice(0,i) + String.fromCharCode(97+j)+word.slice(i+1);if(!minDistance&&tryWord === endWord) minDistance = distance+1;if (wordSet.has(tryWord)) {trySet.add(tryWord)mapSet.add(tryWord)}}}map.set(word,mapSet)}distance++;for (const w of trySet) {wordSet.delete(w)}beginSet = trySet}let ans = [];let path = [beginWord];dfs(beginWord,endWord,ans,path,map,minDistance,0)return ans
};
function dfs(beginWord,endWord,ans,path,map,minDistance,distance) {if(distance>minDistance) return;if(beginWord === endWord) ans.push(path.slice())let words = map.get(beginWord);if(words){for (const word of words) {path.push(word)dfs(word,endWord,ans,path,map,minDistance,distance+1)path.pop()}}
}

9.7 200. 岛屿数量

var numIslands = function (grid) {let num = 0;if (grid && grid.length) {const maxI = grid.length - 1, maxJ = grid[0].length - 1;function overturn(i, j) {if (i < 0 || j < 0 || i > maxI || j > maxJ) return;if (grid[i][j] === '1') {grid[i][j] = '0';overturn(i, j - 1)overturn(i - 1, j)overturn(i + 1, j)overturn(i, j + 1)}}for (let i = 0; i < grid.length; i++) {for (let j = 0; j < grid[i].length; j++) {if (grid[i][j] === '1') {num++overturn(i, j)}}}}return num
};

9.8 529. 扫雷游戏

var updateBoard = function (board, click) {let x = click[0], y = click[1];if (board[x][y] === 'M') {board[x][y] = 'X'return board}let dx = [-1, -1, -1, 1, 1, 1, 0, 0];let dy = [-1, 1, 0, -1, 1, 0, -1, 1];let getNumsBombs = (board, x, y) => {let num = 0;for (let i = 0; i < 8; i++) {let newX = x + dx[i], newY = y + dy[i];if (newX < 0 || newX >= board.length || newY < 0 || newY >= board[0].length) continue;if (board[newX][newY] === 'M' || board[newX][newY] === 'X') num++}return num;}let dfs = (board, x, y) => {if (x < 0 || x >= board.length || y < 0 || y >= board[0].length || board[x][y] != 'E') return;let num = getNumsBombs(board, x, y);if (num === 0) {board[x][y] = 'B'for (let i = 0; i < 8; i++) {let newX = x + dx[i], newY = y + dy[i];dfs(board, newX, newY)}} else {board[x][y] = num + ''}}dfs(board, x, y)return board;
};

10、贪心算法

10.1 322 零钱兑换

var coinChange = function(coins, amount) {if(amount===0) return 0;let dp = new Array(amount+1).fill(Number.MAX_VALUE);dp[0] = 0;for (let i = 1; i < dp.length; i++) {for (let j = 0; j < coins.length; j++) {if(i-coins[j]>=0){dp[i] = Math.min(dp[i],dp[i-coins[j]]+1)}}}return dp[dp.length-1] === Number.MAX_VALUE ? -1:dp[dp.length-1]
};

10.2 860. 柠檬水找零

var lemonadeChange = function (bills) {let five = 0;let ten = 0;for (let i = 0; i < bills.length; i++) {if(bills[i]===5){five++}else if(bills[i]===10){if(five<=0) return falsefive--ten++}else{if(five>0&&ten>0){five--ten--}else if(five-3>=0){five = five-3}else{return false}}}return true
};

10.3 455 分发饼干

var findContentChildren = function(g, s) {g = g.sort((a,b)=>a-b)s = s.sort((a,b)=>a-b)let gLen = g.length,sLen = s.length;let i = j =0;let maxNum = 0;while (i<gLen&&j<sLen) {if(s[j]>=g[i]){i++j++maxNum++}else{j++}}return maxNum
};

10.4 122 买卖股票的最佳时机 II

var maxProfit = function(prices) {let max = 0;const len =  prices.length;for (let i = 1; i <len; i++) {max += Math.max(prices[i]-prices[i-1],0)}return max
};

10.5 45 跳跃游戏 II

var jump = function(nums) {const hash = {}const toEnd = (from)=>{if(hash[from]) return hash[from]if(from === nums.length-1)return 0;if(from + nums[from]>=nums.length-1) return 1;let min = Infinity;for (let i = nums[from]; i > 0; i--) {min = Math.min(toEnd(from+i),min)if (min===1) break}hash[from] = min +1;return hash[from]}return toEnd(0)
};

10.6 55. 跳跃游戏

var canJump = function (nums) {let max = nums[0];let len = nums.lengthfor (let i = 1; i < len; i++) {if (max >= len) {return true} else if (max < i) {return false} else {max = Math.max(max, i + nums[i])}}return true
};

10.7 874. 模拟行走机器人

var robotSim = function(commands, obstacles) {let obstacleMap = {};obstacles.forEach(o=>{if(o.length>0) obstacleMap[o[0]+','+o[1]] = true})let res = 0;let dx = [0,1,0,-1];let dy = [1,0,-1,0];let [x,y,di] = [0,0,0];commands.forEach((c,index)=>{if(c===-1) di = (di+1)%4if(c===-2) di = (di+3)%4if(c>0) {for (let z = 0; z < c; z++) {if(!obstacleMap[(x+dx[di])+','+(y+dy[di])]){x+=dx[di];y+=dy[di];res = Math.max(res,x*x+y*y)}}}})return res;
};

11、二分查找

11.1 69. x 的平方根

// 投机取巧的方法
//var mySqrt = function(x) {
//    return parseInt(Math.sqrt(x))
//};
// 暴力破解
// var mySqrt = function(x) {
//     let sqrt = 0;
//     while (!(sqrt*sqrt<=x&&((sqrt+1)*(sqrt+1)>x))) {
//         sqrt++
//     }
//     return sqrt
// };var mySqrt = function (x) {if(x<0) return NaN;if(x<2) return x;let left = 1,right=x>>1;while(left+1<right){let mid = left + ((right-left)>>1)if(mid === x/mid){return mid}else if(mid< x/mid){left = mid}else{right = mid}}return right>x/right?left:right;
};

11.2 367. 有效的完全平方数

// 暴力破解
// var isPerfectSquare = function(num) {
//     if (num===1)  return true
//     let mid = num>>1;
//     for (let i = 0; i <=mid; i++) {
//        if (i*i===num) {
//            console.log(i);//            return true
//        }
//     }
//     return false
// };
// 二分法
var isPerfectSquare = function(num) {if (num === 1) return true;let left = 0,right = num;while(left<=right){let mid = parseInt((left+right)/2);if (mid*mid === num) {return true}else if(mid*mid < num){left = mid+1}else{right = mid-1}}return false
}

11.3 33. 搜索旋转排序数组

// 投机取巧的
//var search = function(nums, target) {
//    return nums.findIndex(item=>item===target)
//};var search = function (nums, target) {let start = 0, end = nums.length - 1;while (start <= end) {const mid = start + ((end - start) >> 1)if (nums[mid] === target) return mid;if (nums[mid] >= nums[start]) {if (target >= nums[start] && target <= nums[mid]) {end = mid - 1} else {start = mid + 1}} else {if (target >= nums[mid] && target <= nums[end]) {start = mid + 1} else {end = mid - 1}}}return -1;
};

11.4 74. 搜索二维矩阵

// 暴力
// for (let i = 0; i < matrix.length; i++) {
//     for (let j = 0; j < matrix[i].length; j++) {
//         if (matrix[i][j]===target) {
//             return true
//         }
//     }
// }
// return false// var searchMatrix = function(matrix, target) {
//     if(!matrix.length) return false;
//     let i =0;
//     for (;i< matrix.length;i++) {
//        if(matrix[i][0]>target) break
//     }
//     if(i===0) return false
//     return matrix[i-1].indexOf(target)!=-1
// };// 二分法
var searchMatrix = function(matrix, target){let m = matrix.length;if(m==0) return false;let n = matrix[0].length,low = 0,high = m*n -1;while(low<=high){let mid = (low+high)>>1;let row = parseInt(mid/n),col = mid%n;let matrixMid = matrix[row][col];if(matrixMid<target){low = mid+1}else if(matrixMid>target){high = mid -1}else if(matrixMid === target){return true}}return false
}

11.5 153. 寻找旋转排序数组中的最小值

// 投机法
//var findMin = function(nums) {
//    return Math.min(...nums)
//};
// 二分法
var findMin = function(nums) {let low = 0,high = nums.length -1;while(low<high){let mid = (low+high)>>1if (nums[mid]>nums[high]) {low = mid+1}else{high = mid}}return nums[low]
};
查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. Typora 使用语法

    # Typora的Markdown语法[TOC]# 一级标题## 二级标题## 三级标题## 代码高亮```python def cal(a, b):return a + bfor i in range(1, 10):for j in range(1, i + 1):print(%d * %d = %d % (i, j, i * j), end = )print( ) ```## 待办事项 to do list- [x] 待办事项1 - [ ] 待办…...

    2024/4/24 9:40:31
  2. 走出舒适区

    第一次写博客 其实很早之前,第一次接触CSDN就有写博客的打算,但是迟迟没有动手,拖着拖着,竟然马上大学毕业了。回想一下自己的学生时代,一座贫困县承载了我一年级到高三的学习生涯,所有人都告诉你大学是乐园,考上大学就结束了。如井底之蛙般的眼界,按部就班的学习,进入…...

    2024/4/24 9:40:30
  3. 2020百度云智峰会智能服务与营销分论坛,企业服务智能化转型的新基建

    5月18日下午,2020百度云智峰会智能服务与营销分论坛线上召开,百度智能云智能、客服与营销事业部李旭;广东电网客户服务中心数据应部副部长刘振华;浦发银行创新实验室副处长张琛;苏州罗盘网络科技股份有限公司CEO王晔出席论坛发表主题演讲。 智能客服创造商业价值 今年年初…...

    2024/4/24 9:40:29
  4. SDN介绍

    SDN介绍 什么是SDN?二.SDN解决什么问题?三.传统网络概念和结构体系传统网络数据控制与转发:传统网络架构:四.SDN概述SDN(Software Defined Netrork)软件定义网络。SDN的分类五.SDN网络架构SDN网络体系架构的三层模型:SDN网络部署方式六.SDN的价值网络业务快速创新:…...

    2024/4/24 9:40:34
  5. 过年没有烟花炮竹助兴怎么办?那就来试试电子礼炮!

    以往的春节过年时,我们最开心的莫过于和伙伴们一起放烟花、摔炮仗了。这种浓浓的喜庆感是不少人童年珍贵的回忆,这也象征着新的一年到来,大家一起红红火火。 不过随着时代的发展,环境问题的严重以及环保措施力度的加大,现在很多地方都已经不让燃放烟花炮竹了。当时听到这个…...

    2024/4/24 9:40:27
  6. 疫情打破了生活的节奏,学习的节奏不能乱!

    疫情打破了生活的节奏,学习的节奏不能乱!世上只有一种投资只赚不赔,那就是学习!!!传智播客于2020年升级了Java学习线路图,硬核升级,免费放送!学完你就是中级程序员,能更快一步找到工作!一、Java基础JavaSE基础是Java中级程序员的起点,是帮助你从小白到懂得编程的必…...

    2024/4/24 9:40:30
  7. nginx配置ssl证书实现https

    服务器系统:centos6 服务器IP地址:0.0.0.0 域名:bjubi.com 二,域名解析到服务器 在阿里云控制台-产品与服务-云解析DNS-找到需要解析的域名点“解析”,进入解析页面后选择【添加解析】按钮会弹出如下页面: 主机记录这里选择@,记录值就是服务器ip地址,确认。三,申请ca证…...

    2024/4/24 9:40:25
  8. 毕设论文---cartographer之贝叶斯理论

    贝叶斯原理介绍贝叶斯网络前,我们先说一下贝叶斯定理。我们在大学学概率论的时候就听过贝叶斯定理了。 在贝叶斯中,经常提到的就是条件概率,也叫作后验概率。它的意思是事件A在事件B已经发生的条件下仍然发生的概率,表示为P(A|B),读作“在B条件下A的概率”。先验概率:通过…...

    2024/5/5 18:10:16
  9. 应用层协议@传输层协议

    应用层协议:应用层是面对程序员的一层,应用程序是程序员自己写的,因此应用层协议由程序员自己决定。1、自定制协议:序列化:将多个数据对象按照指定的协议进行组织成为持久化存储/数据传输的二进制数据串。反序列化:将二进制数据串通过指定协议进行解析得到各个数据对象。…...

    2024/4/24 9:40:23
  10. 单例模式详解

    原文链接 单例模式 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对…...

    2024/4/24 9:40:22
  11. 不仅仅是玩具,Python带你解读不一样的乐高

    CDA数据分析师 出品 作者:Mika、泽龙数据:真达 后期:泽龙【导语】:今天我们来聊聊小朋友和大朋友们都爱不释手的乐高,Python技术部分请看第四部分。Show me data,用数据说话!六一儿童节到了,过节的不仅仅是儿童,还有很多不想长大的成年人。然而,儿童游乐场不好意思…...

    2024/4/24 9:40:22
  12. Typora语法

    Typora的Markdown语法 文章目录Typora的Markdown语法一级标题二级标题三级标题代码高亮待办事项 to do list有序列表无序列表分割线流程图标准流程图时序图标准时序图甘特图引用粗体、斜体、删除线、下划线插入表情上标和下标高亮表格数学公式行内公式行间公式常见公式常见希腊…...

    2024/4/16 10:11:35
  13. 第六章:easyCode代码生成器

    前言到了这里过后,我们剧本的架子已经基本搭起来了。我们可以开始进行大规模的表演了。在开始表演之前,我们要在采购一个道具,这个道具就是代码生成。我们很多的领域模型、vo、dto、entity等实体以及我们的dao层、service层、controller层、甚至我们的前端代码都能使用代码生…...

    2024/4/15 6:05:40
  14. POI和EasyExcel

    POI和EasyExcel引入pom依赖<!--xls 03版本--><dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>3.17</version></dependency><!--xls 07版本--><dependency><groupI…...

    2024/4/20 3:38:20
  15. 并发+JVM+Redis+MySQL+分布式+微服务等及阿里等大厂最新面试问答

    不知道有多少人和我一样是年前辞职,结果赶上了疫情,在家里一呆就是几个月!但塞翁失马,焉知非福!我本来就打算年后找工作,正好趁着这段时间,找一些在大厂的朋友们收集了阿里、腾讯、字节跳动、百度、华为、美团等最新的一些面试真题,又把网盘里以前收集的许多资料重新进…...

    2024/4/16 10:11:15
  16. HashMap的相关知识点总结

    一. 基本概念首先HashMap是一种常用的数据结构,由数组和链表构成,数组里面有很多K-V的实例,在java7叫entry,在Java8叫node,本身所有的位置都为null,在put插入的时候会根据Key的的hash值去计算一个index值二. 既然HashMap是由数组和链表构成的,那么链表是如何形成的?不…...

    2024/4/16 10:11:25
  17. 阿里大鱼:自自定短信模板

    阿里大鱼 :自定义短信模板代码可复用 代码可复用* 发送自定义参数短信* @param phone* @param templateCode* @param params* @throws ClientException*/ public static void sendMsg(String phone, String templateCode, HashMap<String,String> params) throws Client…...

    2024/4/16 10:11:30
  18. springboot配置多个mongodb实现动态切换

    日志平台要连接多个mongo库做日志统一查询,使用springboot的多Template模式不能做到动态切换,所以这里做一个动态模板实现自动切换。DynamicMongoTemplate继承 MongoTemplate重写doGetDatabase方法,这个方法是protected修饰的,一看就知道是提供给咱们重写的。import com.mo…...

    2024/4/15 6:05:37
  19. 从零搭建SSM(spring springMVC mybatis) 后台框架

    闲来无事复习了一下SSM搭建,给刚入坑的小白提供一个空白框架学习,话不多说 上代码 代码中有详细注解 介绍一、创建SSM框架需要的配置文件 applicationContext.xml spring-mvc.xml spring-server.xmlapplicationContext.xml 用于spring 集成 mybatis等<?xml version=&q…...

    2024/4/16 10:11:35
  20. 苏宁茬价618:“J-10%”杀气腾腾,消费者喜笑颜开

    疫情后的首个618怎么玩?苏宁给出了答案。 5月25日,苏宁举行“零售风暴2020”为主题的618发布会,并启动了“J-10%”省钱计划、“千百万”爆款计划、“1V1”服务计划。 01多措并举,苏宁掀起618零售风暴 此次苏宁发布的3大计划中,“J-10%”省钱计划最是劲爆,堪称2020年618的…...

    2024/4/24 9:40:21

最新文章

  1. vue中$nextTick用法

    $nextTick 是 Vue.js 提供的一个方法&#xff0c;它用于延迟执行一段代码&#xff0c;直到 Vue 完成当前的 DOM 更新。这在处理 DOM 操作或依赖 DOM 状态的代码时特别有用&#xff0c;因为 Vue 是异步执行 DOM 更新的。 用法&#xff1a; javascript this.$nextTick(callbac…...

    2024/5/5 19:11:44
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. 汽车统一诊断服务UDS协议参考文章和视频

    UDS基础知识介绍-电子发烧友网 【图解UDS】UDS汽车诊断标准协议&#xff08;ISO14229&#xff09;带你入门到精通-有驾 车载测试之UDS诊断协议9&#xff1a;0x27服务&#xff1a;解锁ECU_哔哩哔哩_bilibili UDS诊断的22服务&#xff08;DID读取数据&#xff09;和2E服务&…...

    2024/5/5 4:34:45
  4. 论文阅读AI工具链

    文献检索 可以利用智谱清言来生成合适的文献检索式&#xff0c;并根据需要不断调整。 谷歌学术 在Google Scholar中进行检索时&#xff0c;您可以使用类似的逻辑来构建您的搜索式&#xff0c;但是语法会有所不同。Google Scholar的搜索框接受普通的文本搜索&#xff0c;但是…...

    2024/5/5 8:47:40
  5. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/5/4 23:54:56
  6. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/5/4 23:54:56
  7. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/5/4 23:54:56
  8. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/5/4 23:55:17
  9. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/5/4 23:54:56
  10. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/5/4 23:55:05
  11. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/5/4 23:54:56
  12. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/5/4 23:55:16
  13. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/5/4 23:54:56
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/5/4 18:20:48
  15. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/5/4 23:54:56
  16. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/5/4 23:55:17
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/5/4 23:55:06
  18. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/5/4 23:54:56
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/5/4 23:55:06
  20. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/5/5 8:13:33
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/5/4 23:55:16
  22. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/5/4 23:54:58
  23. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/5/4 23:55:01
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/5/4 23:54:56
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57