aboutsummaryrefslogtreecommitdiff
path: root/single_element_sorted_arr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'single_element_sorted_arr.cpp')
-rw-r--r--single_element_sorted_arr.cpp33
1 files changed, 0 insertions, 33 deletions
diff --git a/single_element_sorted_arr.cpp b/single_element_sorted_arr.cpp
deleted file mode 100644
index e9bd894..0000000
--- a/single_element_sorted_arr.cpp
+++ /dev/null
@@ -1,33 +0,0 @@
-// 540. Single Element in a Sorted Array
-#include "leetcode.h"
-
-/*
- * given a sorted array consisting of only integers where very element appears
- * exactly twice, except for one element which appears exactly once. return the
- * single element that appears only once. solution func must be o(ln) time and
- * o(1) space complexity.
- */
-
-class Solution {
-public:
- int singleNonDuplicate(vector<int> &nums) {
- int low = 0, high = nums.size() - 1, mid;
- while (low < high) {
- mid = (low + high) / 2;
- if ((mid % 2 && nums[mid - 1] == nums[mid]) ||
- (!(mid % 2) && nums[mid] == nums[mid + 1]))
- low = mid + 1;
- else
- high = mid;
- }
- return nums[low];
- }
-};
-
-int main() {
- Solution obj;
- vector<int> nums1 = {1, 1, 2, 3, 3, 4, 4, 8, 8},
- nums2 = {3, 3, 7, 7, 10, 11, 11};
- cout << obj.singleNonDuplicate(nums1) << endl; // expect: 2
- cout << obj.singleNonDuplicate(nums2) << endl; // expect: 10
-}