- 博客(4)
- 收藏
- 关注
原创 leetcode - 977 有序数组的平方 双指针
题目:给你一个按非递减顺序排序的整数数组nums,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。 思路:最直观的解法,先平方,后排序 注意(提醒我自己):在排序循环时,while的范围是left<=right,若不取等于号,最中间的值就无法被放进result数组中 /** * Note: The returned array must be malloced, assume caller calls free(). */ int* sortedSquares(int...
2021-07-24 16:10:42
165
原创 leetcode - 278 第一个错误的版本 解法探讨
题目: 你是产品经理,目前正在带领一个团队开发新的产品。不幸的是,你的产品的最新版本没有通过质量检测。由于每个版本都是基于之前的版本开发的,所以错误的版本之后的所有版本都是错的。 假设你有 n 个版本 [1, 2, ..., n],你想找出导致之后所有版本出错的第一个错误的版本。 你可以通过调用bool isBadVersion(version)接口来判断版本号 version 是否在单元测试中出错。实现一个函数来查找第一个错误的版本。你应该尽量减少对调用 API 的次数。 分析:要尽量少的调用..
2021-07-24 15:37:54
113
原创 leetcode - 9 回文数 解法探讨
题目: 给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。 解法及思路: //分析: //由示例可知:负数和末尾为0(除0外)的数都不是回文数 //那么需要判断正数中,左侧的数是否等于右边 bool isPalindrome(int x){ int len; int temp = x; if( ...
2021-07-24 14:27:17
99
原创 leetcode - 35 搜索插入位置 解法探讨
题目:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 解法及思路: //时间复杂度为O(logn) 即是要求二分法 int searchInsert(int* nums, int numsSize, int target){ int left = 0; int right = numsSize - 1; while(left <= right) { int middle
2021-07-21 22:18:13
134
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人