1 Star 0 Fork 0

wd6/LeetCode-1

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
C++
01-matrix.cpp
1-bit-and-2-bit-characters.cpp
132-pattern.cpp
2-keys-keyboard.cpp
24-game.cpp
3sum-closest.cpp
3sum-smaller.cpp
3sum.cpp
4-keys-keyboard.cpp
4sum-ii.cpp
4sum.cpp
add-and-search-word-data-structure-design.cpp
add-binary.cpp
add-bold-tag-in-string.cpp
add-digits.cpp
add-one-row-to-tree.cpp
add-strings.cpp
add-two-numbers-ii.cpp
add-two-numbers.cpp
additive-number.cpp
alien-dictionary.cpp
all-oone-data-structure.cpp
anagrams.cpp
android-unlock-patterns.cpp
arithmetic-slices-ii-subsequence.cpp
arithmetic-slices.cpp
arranging-coins.cpp
array-nesting.cpp
array-partition-i.cpp
assign-cookies.cpp
average-of-levels-in-binary-tree.cpp
base-7.cpp
baseball-game.cpp
basic-calculator-ii.cpp
basic-calculator.cpp
battleships-in-a-board.cpp
beautiful-arrangement-ii.cpp
beautiful-arrangement.cpp
best-meeting-point.cpp
best-time-to-buy-and-sell-stock-with-cooldown.cpp
best-time-to-buy-and-sell-stock-with-transaction-fee.cpp
best-time-to-buy-and-sell-stock.cpp
binary-number-with-alternating-bits.cpp
binary-search-tree-iterator.cpp
binary-tree-inorder-traversal.cpp
binary-tree-level-order-traversal.cpp
binary-tree-longest-consecutive-sequence-ii.cpp
binary-tree-longest-consecutive-sequence.cpp
binary-tree-paths.cpp
binary-tree-postorder-traversal.cpp
binary-tree-preorder-traversal.cpp
binary-tree-tilt.cpp
binary-tree-vertical-order-traversal.cpp
binary-watch.cpp
bitwise-and-of-numbers-range.cpp
bomb-enemy.cpp
boundary-of-binary-tree.cpp
brick-wall.cpp
bulb-switcher-ii.cpp
bulb-switcher.cpp
bulls-and-cows.cpp
burst-balloons.cpp
can-i-win.cpp
can-place-flowers.cpp
canCompleteCircuit.cpp
canJump.cpp
candy.cpp
circular-array-loop.cpp
cloneGraph.cpp
closest-binary-search-tree-value-ii.cpp
closest-binary-search-tree-value.cpp
coin-change-2.cpp
coin-change.cpp
coin-path.cpp
combination-sum-iii.cpp
combination-sum-iv.cpp
combinationSum.cpp
combinationSum2.cpp
combine.cpp
compare-version-numbers.cpp
complex-number-multiplication.cpp
concatenated-words.cpp
connect.cpp
construct-binary-tree-from-inorder-and-postorder-traversal.cpp
construct-binary-tree-from-preorder-and-inorder-traversal.cpp
construct-binary-tree-from-string.cpp
construct-string-from-binary-tree.cpp
construct-the-rectangle.cpp
container-with-most-water.cpp
contains-duplicate-ii.cpp
contains-duplicate-iii.cpp
contains-duplicate.cpp
contiguous-array.cpp
continuous-subarray-sum.cpp
convert-a-number-to-hexadecimal.cpp
convert-bst-to-greater-tree.cpp
convert-sorted-array-to-binary-search-tree.cpp
convert-sorted-list-to-binary-search-tree.cpp
convert.cpp
convex-polygon.cpp
copy-list-with-random-pointer.cpp
count-and-say.cpp
count-binary-substrings.cpp
count-complete-tree-nodes.cpp
count-numbers-with-unique-digits.cpp
count-of-range-sum.cpp
count-of-smaller-numbers-after-self.cpp
count-primes.cpp
count-the-repetitions.cpp
count-univalue-subtrees.cpp
counting-bits.cpp
course-schedule-ii.cpp
course-schedule-iii.cpp
course-schedule.cpp
create-maximum-number.cpp
cut-off-trees-for-golf-event.cpp
data-stream-as-disjoint-intervals.cpp
decode-string.cpp
decode-ways-ii.cpp
decode-ways.cpp
degree-of-an-array.cpp
delete-node-in-a-bst.cpp
delete-node-in-a-linked-list.cpp
delete-operation-for-two-strings.cpp
design-compressed-string-iterator.cpp
design-excel-sum-formula.cpp
design-hit-counter.cpp
design-in-memory-file-system.cpp
design-log-storage-system.cpp
design-phone-directory.cpp
design-search-autocomplete-system.cpp
design-snake-game.cpp
design-tic-tac-toe.cpp
design-twitter.cpp
detect-capital.cpp
diagonal-traverse.cpp
diameter-of-binary-tree.cpp
different-ways-to-add-parentheses.cpp
distribute-candies.cpp
divide-two-integers.cpp
dota2-senate.cpp
elimination-game.cpp
employee-importance.cpp
encode-and-decode-strings.cpp
encode-and-decode-tinyurl.cpp
encode-string-with-shortest-length.cpp
equal-tree-partition.cpp
erect-the-fence.cpp
evaluate-division.cpp
evaluate-reverse-polish-notation.cpp
excel-sheet-column-number.cpp
excel-sheet-column-title.cpp
exclusive-time-of-functions.cpp
exist.cpp
expression-add-operators.cpp
factor-combinations.cpp
factorial-trailing-zeroes.cpp
falling-squares.cpp
find-all-anagrams-in-a-string.cpp
find-all-duplicates-in-an-array.cpp
find-all-numbers-disappeared-in-an-array.cpp
find-bottom-left-tree-value.cpp
find-duplicate-file-in-system.cpp
find-duplicate-subtrees.cpp
find-k-closest-elements.cpp
find-k-pairs-with-smallest-sums.cpp
find-k-th-smallest-pair-distance.cpp
find-largest-value-in-each-tree-row.cpp
find-leaves-of-binary-tree.cpp
find-median-from-data-stream.cpp
find-minimum-in-rotated-sorted-array-ii.cpp
find-minimum-in-rotated-sorted-array.cpp
find-mode-in-binary-search-tree.cpp
find-peak-element.cpp
find-permutation.cpp
find-right-interval.cpp
find-the-celebrity.cpp
find-the-closest-palindrome.cpp
find-the-derangement-of-an-array.cpp
find-the-difference.cpp
find-the-duplicate-number.cpp
first-bad-version.cpp
first-missing-positive.cpp
first-unique-character-in-a-string.cpp
fizz-buzz.cpp
flatten-2d-vector.cpp
flatten-nested-list-iterator.cpp
flatten.cpp
flip-game-ii.cpp
flip-game.cpp
fraction-addition-and-subtraction.cpp
fraction-to-recurring-decimal.cpp
freedom-trail.cpp
friend-circles.cpp
frog-jump.cpp
game-of-life.cpp
generalized-abbreviation.cpp
generateParenthesis.cpp
getRow.cpp
graph-valid-tree.cpp
gray-code.cpp
group-shifted-strings.cpp
guess-number-higher-or-lower-ii.cpp
guess-number-higher-or-lower.cpp
h-index-ii.cpp
h-index.cpp
hamming-distance.cpp
happy-number.cpp
hasPathSum.cpp
heaters.cpp
house-robber-ii.cpp
house-robber-iii.cpp
image-smoother.cpp
implement-magic-dictionary.cpp
implement-queue-using-stacks.cpp
implement-stack-using-queues.cpp
implement-strstr.cpp
implement-trie-prefix-tree.cpp
increasing-subsequences.cpp
increasing-triplet-subsequence.cpp
inorder-successor-in-bst.cpp
insert-delete-getrandom-o1-duplicates-allowed.cpp
insert-delete-getrandom-o1.cpp
insert-interval.cpp
insertion-sort-list.cpp
integer-break.cpp
integer-replacement.cpp
integer-to-english-words.cpp
integer-to-roman.cpp
intersection-of-two-arrays-ii.cpp
intersection-of-two-arrays.cpp
intersection-of-two-linked-lists.cpp
invert-binary-tree.cpp
ipo.cpp
is-subsequence.cpp
isInterleave.cpp
isMatch.cpp
isScramble.cpp
isValidBST2.cpp
island-perimeter.cpp
isomorphic-strings.cpp
judge-route-circle.cpp
jump.cpp
k-diff-pairs-in-an-array.cpp
k-empty-slots.cpp
k-inverse-pairs-array.cpp
k-th-smallest-in-lexicographical-order.cpp
keyboard-row.cpp
kill-process.cpp
knight-probability-in-chessboard.cpp
kth-largest-element-in-an-array.cpp
kth-smallest-element-in-a-bst.cpp
kth-smallest-element-in-a-sorted-matrix.cpp
kth-smallest-number-in-multiplication-table.cpp
ladderLength.cpp
largest-bst-subtree.cpp
largest-divisible-subset.cpp
largest-number.cpp
largest-palindrome-product.cpp
largest-rectangle-in-histogram.cpp
length-of-last-word.cpp
letterCombinations.cpp
lexicographical-numbers.cpp
lfu-cache.cpp
license-key-formatting.cpp
line-reflection.cpp
linked-list-cycle-ii.cpp
linked-list-cycle.cpp
linked-list-random-node.cpp
logger-rate-limiter.cpp
lonely-pixel-i.cpp
lonely-pixel-ii.cpp
longest-absolute-file-path.cpp
longest-common-prefix.cpp
longest-consecutive-sequence.cpp
longest-continuous-increasing-subsequence.cpp
longest-harmonious-subsequence.cpp
longest-increasing-path-in-a-matrix.cpp
longest-increasing-subsequence.cpp
longest-line-of-consecutive-one-in-matrix.cpp
longest-palindrome.cpp
longest-palindromic-subsequence.cpp
longest-palindromic-substring.cpp
longest-repeating-character-replacement.cpp
longest-substring-with-at-least-k-repeating-characters.cpp
longest-substring-with-at-most-k-distinct-characters.cpp
longest-substring-with-at-most-two-distinct-characters.cpp
longest-substring-without-repeating-characters.cpp
longest-uncommon-subsequence-i.cpp
longest-uncommon-subsequence-ii.cpp
longest-univalue-path.cpp
longest-valid-parentheses.cpp
longest-word-in-dictionary-through-deleting.cpp
longestCommonLength.cpp
lowest-common-ancestor-of-a-binary-search-tree.cpp
lowest-common-ancestor-of-a-binary-tree.cpp
lru-cache.cpp
magical-string.cpp
majority-element-ii.cpp
majority-element.cpp
map-sum-pairs.cpp
matchsticks-to-square.cpp
max-area-of-island.cpp
max-consecutive-ones-ii.cpp
max-consecutive-ones.cpp
max-points-on-a-line.cpp
max-sum-of-sub-matrix-no-larger-than-k.cpp
maxPathSum.cpp
maxProfitII.cpp
maxProfitIII.cpp
maximal-rectangle.cpp
maximal-square.cpp
maximum-average-subarray-i.cpp
maximum-average-subarray-ii.cpp
maximum-binary-tree.cpp
maximum-depth-of-binary-tree.cpp
maximum-distance-in-arrays.cpp
maximum-gap.cpp
maximum-length-of-pair-chain.cpp
maximum-length-of-repeated-subarray.cpp
maximum-product-of-three-numbers.cpp
maximum-product-of-word-lengths.cpp
maximum-size-subarray-sum-equals-k.cpp
maximum-sum-of-3-non-overlapping-subarrays.cpp
maximum-swap.cpp
maximum-vacation-days.cpp
maximum-width-of-binary-tree.cpp
maximum-xor-of-two-numbers-in-an-array.cpp
median-of-two-sorted-arrays.cpp
meeting-rooms-ii.cpp
meeting-rooms.cpp
merge-intervals.cpp
merge-k-sorted-lists.cpp
merge-sorted-array.cpp
merge-two-binary-trees.cpp
merge-two-sorted-lists.cpp
merge2.cpp
min-stack.cpp
minCut.cpp
minDepth.cpp
minDistance.cpp
minPathSum.cpp
minesweeper.cpp
mini-parser.cpp
minimum-absolute-difference-in-bst.cpp
minimum-ascii-delete-sum-for-two-strings.cpp
minimum-factorization.cpp
minimum-genetic-mutation.cpp
minimum-height-trees.cpp
minimum-index-sum-of-two-lists.cpp
minimum-moves-to-equal-array-elements-ii.cpp
minimum-moves-to-equal-array-elements.cpp
minimum-number-of-arrows-to-burst-balloons.cpp
minimum-size-subarray-sum.cpp
minimum-time-difference.cpp
minimum-unique-word-abbreviation.cpp
minimum-window-substring.cpp
minimumTotal.cpp
minimumTotal2.cpp
missing-number.cpp
missing-ranges.cpp
most-frequent-subtree-sum.cpp
move-zeroes.cpp
moving-average-from-data-stream.cpp
multiply-strings.cpp
nested-list-weight-sum-ii.cpp
nested-list-weight-sum.cpp
next-closest-time.cpp
next-greater-element-i.cpp
next-greater-element-ii.cpp
next-greater-element-iii.cpp
next-permutation.cpp
nim-game.cpp
non-decreasing-array.cpp
non-negative-integers-without-consecutive-ones.cpp
non-overlapping-intervals.cpp
nth-digit.cpp
numDistinct.cpp
number-complement.cpp
number-of-1-bits.cpp
number-of-boomerangs.cpp
number-of-connected-components-in-an-undirected-graph.cpp
number-of-digit-one.cpp
number-of-distinct-islands-ii.cpp
number-of-distinct-islands.cpp
number-of-islands-ii.cpp
number-of-longest-increasing-subsequence.cpp
number-of-segments-in-a-string.cpp
odd-even-linked-list.cpp
one-edit-distance.cpp
ones-and-zeroes.cpp
optimal-account-balancing.cpp
optimal-division.cpp
out-of-boundary-paths.cpp
output-contest-matches.cpp
pacific-atlantic-water-flow.cpp
paint-fence.cpp
paint-house-ii.cpp
paint-house.cpp
palindrome-linked-list.cpp
palindrome-number.cpp
palindrome-pairs.cpp
palindrome-permutation-ii.cpp
palindrome-permutation.cpp
palindromePartition.cpp
palindromePartition2.cpp
palindromic-substrings.cpp
partition-equal-subset-sum.cpp
partition-list.cpp
partition-to-k-equal-sum-subsets.cpp
pascals-triangle-ii.cpp
pascals-triangle.cpp
patching-array.cpp
path-sum-iii.cpp
path-sum-iv.cpp
pathSum.cpp
peeking-iterator.cpp
perfect-number.cpp
perfect-rectangle.cpp
perfect-squares.cpp
permutation-in-string.cpp
permutation-sequence.cpp
permuteUnique.cpp
plus-one-linked-list.cpp
plus-one.cpp
poor-pigs.cpp
power-of-four.cpp
power-of-three.cpp
power-of-two.cpp
powx-n.cpp
predict-the-winner.cpp
print-binary-tree.cpp
product-of-array-except-self.cpp
queue-reconstruction-by-height.cpp
random-pick-index.cpp
range-addition-ii.cpp
range-addition.cpp
range-module.cpp
range-sum-query-2d-immutable.cpp
range-sum-query-2d-mutable.cpp
range-sum-query-immutable.cpp
range-sum-query-mutable.cpp
ransom-note.cpp
read-n-characters-given-read4-ii-call-multiple-times.cpp
read-n-characters-given-read4.cpp
rearrange-string-k-distance-apart.cpp
reconstruct-itinerary.cpp
reconstruct-original-digits-from-english.cpp
recover-binary-search-tree.cpp
rectangle-area.cpp
redundant-connection-ii.cpp
redundant-connection.cpp
relative-ranks.cpp
remove-9.cpp
remove-boxes.cpp
remove-duplicate-letters.cpp
remove-duplicates-from-sorted-array-ii.cpp
remove-duplicates-from-sorted-array.cpp
remove-duplicates-from-sorted-list-ii.cpp
remove-duplicates-from-sorted-list.cpp
remove-element.cpp
remove-invalid-parentheses.cpp
remove-k-digits.cpp
remove-linked-list-elements.cpp
remove-nth-node-from-end-of-list.cpp
reorder-list.cpp
repeated-string-match.cpp
repeated-substring-pattern.cpp
replace-words.cpp
reshape-the-matrix.cpp
restoreIpAddresses.cpp
reverse-bits.cpp
reverse-integer.cpp
reverse-linked-list-ii.cpp
reverse-linked-list.cpp
reverse-nodes-in-k-group.cpp
reverse-pairs.cpp
reverse-string-ii.cpp
reverse-string.cpp
reverse-vowels-of-a-string.cpp
reverse-words-in-a-string-ii.cpp
reverse-words-in-a-string-iii.cpp
reverse-words-in-a-string.cpp
roman-to-integer.cpp
rotate-array.cpp
rotate-function.cpp
rotate-image.cpp
rotate-list.cpp
russian-doll-envelopes.cpp
same-tree.cpp
search-a-2d-matrix-ii.cpp
search-a-2d-matrix.cpp
search-for-a-range.cpp
search-in-rotated-sorted-array-ii.cpp
search-in-rotated-sorted-array.cpp
search-insert-position.cpp
searchMatrix2.cpp
second-minimum-node-in-a-binary-tree.cpp
self-crossing.cpp
sentence-screen-fitting.cpp
sequence-reconstruction.cpp
serialize-and-deserialize-binary-tree.cpp
serialize-and-deserialize-bst.cpp
set-matrix-zeroes.cpp
set-mismatch.cpp
shopping-offers.cpp
shortest-distance-from-all-buildings.cpp
shortest-palindrome.cpp
shortest-unsorted-continuous-subarray.cpp
shortest-word-distance-ii.cpp
shortest-word-distance-iii.cpp
shortest-word-distance.cpp
shuffle-an-array.cpp
simplify-path.cpp
single-element-in-a-sorted-array.cpp
single-number-ii.cpp
single-number-iii.cpp
single-number.cpp
sliding-window-maximum.cpp
sliding-window-median.cpp
smallest-good-base.cpp
smallest-range.cpp
smallest-rectangle-enclosing-black-pixels.cpp
solve-the-equation.cpp
solveNQueens.cpp
solveSudoku.cpp
sort-characters-by-frequency.cpp
sort-colors.cpp
sort-list.cpp
sort-transformed-array.cpp
sortColors.cpp
sparse-matrix-multiplication.cpp
spiral-matrix-ii.cpp
spiral-matrix.cpp
split-array-into-consecutive-subsequences.cpp
split-array-largest-sum.cpp
split-array-with-equal-sum.cpp
split-concatenated-strings.cpp
sqrtx.cpp
squirrel-simulation.cpp
stickers-to-spell-word.cpp
strange-printer.cpp
string-compression.cpp
string-to-integer-atoi.cpp
strobogrammatic-number-ii.cpp
strobogrammatic-number-iii.cpp
strobogrammatic-number.cpp
strong-password-checker.cpp
student-attendance-record-i.cpp
student-attendance-record-ii.cpp
subarray-product-less-than-k.cpp
subarray-sum-equals-k.cpp
subsets-ii.cpp
subsets.cpp
substring-with-concatenation-of-all-words.cpp
subtree-of-another-tree.cpp
sum-of-left-leaves.cpp
sum-of-square-numbers.cpp
sum-of-two-integers.cpp
sumNumbers.cpp
summary-ranges.cpp
super-pow.cpp
super-ugly-number.cpp
super-washing-machines.cpp
surrounded-regions.cpp
surroundedRegions.cpp
swap-nodes-in-pairs.cpp
symmetric-tree.cpp
tag-validator.cpp
target-sum.cpp
task-scheduler.cpp
teemo-attacking.cpp
ternary-expression-parser.cpp
text-justification.cpp
the-maze-ii.cpp
the-maze-iii.cpp
the-maze.cpp
the-skyline-problem.cpp
third-maximum-number.cpp
threeSum2.cpp
top-k-frequent-elements.cpp
top-k-frequent-words.cpp
total-hamming-distance.cpp
totalNQueens.cpp
trapping-rain-water-ii.cpp
trapping-rain-water.cpp
trim-a-binary-search-tree.cpp
two-sum-ii-input-array-is-sorted.cpp
two-sum-iii-data-structure-design.cpp
two-sum-iv-input-is-a-bst.cpp
two-sum.cpp
ugly-number-ii.cpp
ugly-number.cpp
unique-binary-search-trees-ii.cpp
unique-substrings-in-wraparound-string.cpp
unique-word-abbreviation.cpp
uniquePathWithObstacles.cpp
uniquePaths.cpp
uniquePaths2.cpp
utf-8-validation.cpp
valid-anagram.cpp
valid-number.cpp
valid-palindrome-ii.cpp
valid-palindrome.cpp
valid-parentheses.cpp
valid-parenthesis-string.cpp
valid-perfect-square.cpp
valid-square.cpp
valid-sudoku.cpp
valid-triangle-number.cpp
valid-word-abbreviation.cpp
valid-word-square.cpp
validate-binary-search-tree.cpp
validate-ip-address.cpp
verify-preorder-sequence-in-binary-search-tree.cpp
verify-preorder-serialization-of-a-binary-tree.cpp
walls-and-gates.cpp
water-and-jug-problem.cpp
wiggle-sort-ii.cpp
wiggle-sort.cpp
wiggle-subsequence.cpp
word-abbreviation.cpp
word-break-ii.cpp
word-break.cpp
word-pattern-ii.cpp
word-pattern.cpp
word-search-ii.cpp
word-squares.cpp
wordBreakII.cpp
zigzag-conversion.cpp
zigzag-iterator.cpp
zigzagLevelOrder.cpp
zuma-game.cpp
Golang
Java
MySQL
Python
Shell
LICENSE.md
README.md
克隆/下载
search-in-rotated-sorted-array-ii.cpp 1.37 KB
一键复制 编辑 原始数据 按行查看 历史
// Time: O(logn)
// Space: O(1)
class Solution {
public:
bool search(vector<int> &nums, int target) {
int left = 0, right = nums.size() - 1;
while (left <= right) {
int mid = left + (right - left) / 2;
if (nums[mid] == target) {
return true;
} else if (nums[mid] == nums[left]) {
++left;
} else if ((nums[mid] > nums[left] && nums[left] <= target && target < nums[mid]) ||
(nums[mid] < nums[left] && !(nums[mid] < target && target <= nums[right]))) {
right = mid - 1;
} else {
left = mid + 1;
}
}
return false;
}
};
class Solution2 {
public:
bool search(vector<int> &nums, int target) {
int left = 0, right = nums.size();
while (left < right) {
int mid = left + (right - left) / 2;
if (nums[mid] == target) {
return true;
} else if (nums[mid] == nums[left]) {
++left;
} else if ((nums[left] <= nums[mid] && nums[left] <= target && target < nums[mid]) ||
(nums[left] > nums[mid] && !(nums[mid] < target && target <= nums[right - 1]))) {
right = mid;
} else {
left = mid + 1;
}
}
return false;
}
};
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Python
1
https://gitee.com/wd6/LeetCode-1.git
git@gitee.com:wd6/LeetCode-1.git
wd6
LeetCode-1
LeetCode-1
master

搜索帮助