当前位置: 首页 > news >正文

如何向搜索引擎提交网站企业应该如何进行网站建设

如何向搜索引擎提交网站,企业应该如何进行网站建设,网上的网站模板怎么下载,网站头部设计优化第一此次想到的解法是首先使用二分查找在排序数组中查找到一个指定元素#xff0c;随后对该元素左右进行遍历#xff0c;找到起始位置和结束位置#xff0c;代码如下#xff1a; class Solution { public:vectorint searchRange(vectorint nums, int…第一此次想到的解法是首先使用二分查找在排序数组中查找到一个指定元素随后对该元素左右进行遍历找到起始位置和结束位置代码如下 class Solution { public:vectorint searchRange(vectorint nums, int target) {int size nums.size();int min 0;int max size - 1;while(min max){int mid min (max - min)/2;if(target nums[mid]){max mid - 1;}else if(target nums[mid]){min mid 1;}else{while(nums[min] ! target){min;}while(nums[max] ! target){max--;}return {min,max};}}return {-1,-1};} };执行虽然通过但测试用时并不是很理想在 代码随想录 看到的解法是将题目分为三种情况 情况一target 在数组范围的右边或者左边例如数组{3, 4, 5}target为2或者数组{3, 4, 5},target为6此时应该返回{-1, -1}情况二target 在数组范围中且数组中不存在target例如数组{3,6,7},target为5此时应该返回{-1, -1}情况三target 在数组范围中且数组中存在target例如数组{3,6,7},target为6此时应该返回{1, 1} 采用二分法来分别寻找左边界和右边界最终分情况进行return。代码如下 class Solution { public:vectorint searchRange(vectorint nums, int target) {int leftBorder getLeftBorder(nums, target);int rightBorder getRightBorder(nums, target);// 情况一if (leftBorder -2 || rightBorder -2) return {-1, -1};// 情况三if (rightBorder - leftBorder 1) return {leftBorder 1, rightBorder - 1};// 情况二return {-1, -1};} private:int getRightBorder(vectorint nums, int target) {int left 0;int right nums.size() - 1;int rightBorder -2; // 记录一下rightBorder没有被赋值的情况while (left right) {int middle left ((right - left) / 2);if (nums[middle] target) {right middle - 1;} else { // 寻找右边界nums[middle] target的时候更新leftleft middle 1;rightBorder left;}}return rightBorder;}int getLeftBorder(vectorint nums, int target) {int left 0;int right nums.size() - 1;int leftBorder -2; // 记录一下leftBorder没有被赋值的情况while (left right) {int middle left ((right - left) / 2);if (nums[middle] target) { // 寻找左边界nums[middle] target的时候更新rightright middle - 1;leftBorder right;} else {left middle 1;}}return leftBorder;} };将上述代码的两个二分查找函数进行合并 class Solution { public:vectorint searchRange(vectorint nums, int target) {int leftBorder getBorder(nums, target, true);int rightBorder getBorder(nums, target, false);// 情况一if (leftBorder -2 || rightBorder -2) return {-1, -1};// 情况三if (rightBorder - leftBorder 1) return {leftBorder 1, rightBorder - 1};// 情况二return {-1, -1};} private:int getBorder(vectorint nums, int target, bool flag) {int left 0;int right nums.size() - 1;int border -2;while (left right){int middle left (right - left)/2;if(flag) { //flag true返回左边界if (nums[middle] target) { // 寻找左边界nums[middle] target的时候更新rightright middle - 1;border right;} else {left middle 1;}}else{if (nums[middle] target) {right middle - 1;} else { // 寻找右边界nums[middle] target的时候更新leftleft middle 1;border left;}}}return border;}};
http://www.w-s-a.com/news/517195/

相关文章:

  • 如何编写网站建设销售的心得网站的权限管理怎么做
  • 网站业务员好做吗无忧网站优化
  • 网站随机代码网站建设费 账务处理
  • 商洛网站建设哪家好网站建设 织梦者
  • 怎么创建收费网站宁夏住房和城乡建设部网站
  • 怎么确认网站是什么语言做的用php和mysql做网站
  • 安徽做网站的公司有哪些星子网络公司
  • 肥西县重点工程建设管理局网站wordpress界面菜单怎么弄
  • 宁夏网站开发设计说明书wordpress主题背景图片
  • 同一个阿里云可以做两个网站吗织梦 帝国 学校网站
  • 城阳网站建设培训网站后台怎么上传文件
  • 重庆茂尔建设集团有限公司网站网页制作教程软件
  • 金湖建设工程质量监督网站高端网站建设公司哪里济南兴田德润实惠吗
  • 站酷设计网站官网入口文字设计seo网站推广工具
  • 专业移动网站建设网站建设软件dw
  • 摄影网站设计思想视觉传达毕业设计作品网站
  • 需要优化的网站有哪些设计装修app
  • 数据型网站建设东莞好的网站国外站建设价格
  • 网络营销方法有哪些举例seo应用领域有哪些
  • 建设银行官方网站官网做网站的专业叫什么
  • 矿区网站建设濮阳做网站的公司有哪些
  • 有什么网站可以自己做书甘肃建设厅网站首页
  • 门户网站建设哪专业怎么把自己做的网站登录到网上
  • 如何做网站小编餐饮业手机php网站
  • 备案 网站商城网站设计公司排名
  • 汕头做网站优化公司seo软件简单易排名稳定
  • 如何做众筹网站微网站设计平台
  • 富平做网站十堰优化seo
  • 免费网站空间可访问wordpress弹窗注册代码
  • 东莞网站建设教程南京做代账会计在哪个网站上找