classSolution:defpermute(self,nums):# 1. 这里主要是判断给的全排列是不是一个空字符串,如果是的话直接返回空listiflen(nums)==0:return[]# 7. 这里是用来记录哪一些字母已经被使用过了used=[False]*len(nums)# 2. 用来装排列的list。例如123 321 132诸如此类res=[]# 3. 深度遍历,参数详细(给的数字...
class Solution { public: TreeNode* create(vector<int>& preOrder, vector<int>& vinOrder) { if (preOrder.size() == 0) return nullptr; int rootValue = preOrder[0]; TreeNode* root = new TreeNode(rootValue); if (preOrder.size() == 1) return root; int flag = -1; for (int i ...
class Solution { public: Solution(int capacity){ cap = capacity; } int get(int key) { auto it = m.find(key); if (it == m.end()) return -1; l.splice(l.begin(), l, it->second); return it->second->second; } void set(int key, int value){ auto it = m.find(key); if...
classSolution:defsortArray(self, nums:List[int]) ->List[int]:defswap(nums, i, j): nums[i], nums[j] = nums[j], nums[i]defmedian3(nums, left, right): center = (left+right) //2ifnums[left] > nums[center]: swap(nums, left, center)ifnums[left] > nums[right]: swap(nums, ...
}class Solution { public: int numOfArrays(int n, int m, int k) { vector<vector<C1097Int<>>> pre(k + 1, vector<C1097Int<>>(m+1));//pre[k][j]表示res[0,i)的 最大值为j且search_cost 为k的数量 pre[0][0] = 1;
classSolution{public:stringreplaceSpaces(string &str){ string res;for(autoc:str){if(c==' ')res+="%20";elseres+=c; }returnres; } }; 思路就是定义一个新的字符串,然后一个字符一个字符进行复制,如果是空格,那么就添加%20,否则就添加原字符. ...
classSolution{public:inttriangleNumber(vector<int>&nums){sort(nums.begin(),nums.end());int ret=0;for(int i=nums.size()-1;i>=2;i--){int left=0,right=i-1;while(left<right){if(nums[left]+nums[right]>nums[i]){ret+=right-left;right--;}else{left++;}}}returnret;}};...
class Solution { public: string replaceSpace(string s) { int end = s.size() - 1; // 字符串s的最后一个元素的下标 while (string::npos != s.rfind(' ', end)) { int space = s.rfind(' ', end); // 倒着找空格,避免覆盖 s.replace(space, 1, "%20"); // 将字符串s中空格开始...
classSolution{publicintminCostClimbingStairs(int[]cost){int[]dp=newint[cost.length+1];//cost.length+1 i下标就能对应台阶数了dp[1]=cost[0];//这里的dp[0]不用,从1开始数//i表示第几号台阶,dp[i]就表示上这号台阶吃的最少的费用dp[2]=cost[1];for(int i=3;i<dp.length;i++){// //...
classSolution{public:intnumIdenticalPairs(vector<int>& nums){intans =0;intcounter[101];memset(counter,0,sizeof(counter));for(auton : nums) { ans += counter[n]++; }returnans; } }; python classSolution:defnumIdenticalPairs(self, nums:List[int]) ->int: ...