Update 刷题.md

pull/46/head
JZFamily 2018-06-23 18:52:35 +08:00 committed by GitHub
parent a6ee092cda
commit 8654ff9fe3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 118 additions and 118 deletions

View File

@ -22,73 +22,73 @@ update salary
### 北河
* 第一版 :392ms
```c++
class Solution {
public:
int lengthOfLongestSubstring(string s) {
map<char, short> v;
int max_num = 0;
for (int i = 0; i < s.size(); ++i) {
if (v.find(s[i]) != v.end()) {
if (max_num < v.size()) {
max_num = v.size();
}
i = v.find(s[i])->second + 1;
v.clear();
}
if (i >= s.size()) {
break;
}
v[s[i]] = i;
* 第一版 :392ms
```c++
class Solution {
public:
int lengthOfLongestSubstring(string s) {
map<char, short> v;
int max_num = 0;
for (int i = 0; i < s.size(); ++i) {
if (v.find(s[i]) != v.end()) {
if (max_num < v.size()) {
max_num = v.size();
}
i = v.find(s[i])->second + 1;
v.clear();
}
if (i >= s.size()) {
break;
}
v[s[i]] = i;
if (max_num < v.size()) {
max_num = v.size();
}
return max_num;
}
};
return max_num;
}
};
```
* 第2版 :32ms
```c++
class Solution {
public:
int lengthOfLongestSubstring(string s) {
map<char, short> v;
int max_num = 0;
for (int i = 0; i < s.size(); ++i) {
if (v.find(s[i]) != v.end()) {
if (max_num < v.size()) {
max_num = v.size();
}
++i;
while (i < s.size()) {
if (v.find(s[i]) != v.end()) {
++i;
continue;
}
--i;
break;
}
if (i >= s.size()) {
return max_num;
}
i = v.find(s[i])->second + 1;
v.clear();
}
if (i >= s.size()) {
break;
}
v[s[i]] = i;
```
* 第2版 :32ms
```c++
class Solution {
public:
int lengthOfLongestSubstring(string s) {
map<char, short> v;
int max_num = 0;
for (int i = 0; i < s.size(); ++i) {
if (v.find(s[i]) != v.end()) {
if (max_num < v.size()) {
max_num = v.size();
}
++i;
while (i < s.size()) {
if (v.find(s[i]) != v.end()) {
++i;
continue;
}
--i;
break;
}
if (i >= s.size()) {
return max_num;
}
i = v.find(s[i])->second + 1;
v.clear();
}
if (i >= s.size()) {
break;
}
v[s[i]] = i;
if (max_num < v.size()) {
max_num = v.size();
}
return max_num;
}
};
```
return max_num;
}
};
```
### jzf :252 ms 8
```c++
class Solution {
@ -231,35 +231,35 @@ public:
### jzf
* 第一版 超时 复杂度 n*2^n
```c++
class Solution {
public: int findTargetSumWays(vector<int>& nums, int S) {
int n = 0;
int sum = 0;
int b = 0;
int size =nums.size();
for (size_t k = 0; k <size ; k++)
* 第一版 超时 复杂度 n*2^n
```c++
class Solution {
public: int findTargetSumWays(vector<int>& nums, int S) {
int n = 0;
int sum = 0;
int b = 0;
int size =nums.size();
for (size_t k = 0; k <size ; k++)
{
b = ((1 << k) | b);
}
for (size_t i = 0; i <= b; i++)
{
n = 0;
for (size_t j = 0; j < size; j++)
{
b = ((1 << k) | b);
n += ((1 << j)&i) ? -nums[j] : nums[j];
}
for (size_t i = 0; i <= b; i++)
if (n == S)
{
n = 0;
for (size_t j = 0; j < size; j++)
{
n += ((1 << j)&i) ? -nums[j] : nums[j];
}
if (n == S)
{
sum++;
}
sum++;
}
return sum;
}
};
```
* 第二版
}
return sum;
}
};
```
* 第二版
### kiritow 24ms 2
```c++
@ -341,7 +341,7 @@ var isPalindrome = function(x) {
* 第二版 128ms
```c++
class Solution {
int list[10],len=0,i=0;
int list[10],len=0,i=0;
public:
bool isPalindrome(int x) {
if(x<0)return false;
@ -401,43 +401,43 @@ public:
}
};
```
* 第2版 140ms
```c++
class Solution {
public: bool isPalindrome(int x) {
int mod;
int sh =x;
vector<int> vec;
if(x <0)
{
return false;
}
if(x ==0)
{
return true;
}
if(x%10 ==0)
{
return false;
}
for(size_t i =0;sh>0;i++)
{
vec.push_back(sh%10);
sh = sh/10;
}
vector<int>::iterator i=vec.begin();
vector<int>::iterator j=vec.end()-1;
for(;i<j;i++,j--)
{
if(*i!=*j)
{
return false;
}
}
return true;
* 第2版 140ms
```c++
class Solution {
public: bool isPalindrome(int x) {
int mod;
int sh =x;
vector<int> vec;
if(x <0)
{
return false;
}
};
```
if(x ==0)
{
return true;
}
if(x%10 ==0)
{
return false;
}
for(size_t i =0;sh>0;i++)
{
vec.push_back(sh%10);
sh = sh/10;
}
vector<int>::iterator i=vec.begin();
vector<int>::iterator j=vec.end()-1;
for(;i<j;i++,j--)
{
if(*i!=*j)
{
return false;
}
}
return true;
}
};
```
### 北河 244ms
* 第一版