zoukankan      html  css  js  c++  java
  • 976 三角形的最大周长--重要

    虽然是简单题,但是花费了自己不少时间!!

    1、想用计数排序,结果还写错了,真的难受!!,最后还是用的vector的自动排序指令,sort,刚开始自己忘了!!

    2、思路

    排序:排序的是遍历的前提

    从最右边的数遍历,三个连续的,最小的加第二小大于最大的就返回值,否则,最右边的数向左边移一位,不要再犯程序中的错误了好吗!!!

    注意。一定有返回值,return 0

    3、代码

     1 //之前自己没写过排序算法,今天第一次用计数排序,刚刚在上一题数组相对排序中学到的
     2 //发现了自己的错误,已经排序了!如果倒数第二个数加倒数第三个数小于最后一个数
     3 //剩下的所有都小于,所以最后一位也要移动!!!!
     4 class Solution {
     5 public:
     6     int largestPerimeter(vector<int>& A) {
     7         sort(A.begin(),A.end());
     8         if(A.size()==3) {
     9             if(A[0]+A[1]<=A[2]) return 0;
    10             return A[0]+A[1]+A[2];
    11         }
    12         if(A.size()<3) return 0;
    13         int i=A.size()-1;
    14         for(;i>=2;i--){
    15             if(A[i]<A[i-1]+A[i-2]){
    16                 return A[i]+A[i-1]+A[i-2];
    17                 break;
    18             }
    19         } 
    20         return 0;
    21     }
    22 };
  • 相关阅读:
    图片懒加载
    浅谈javascript的函数节流
    js字符串常用方法详解
    js数组详解
    thinkphp3.2 批量添加数据
    openssl证书及配置
    手机访问PC端
    mui框架(三)
    mui框架(二)
    mui框架(一)
  • 原文地址:https://www.cnblogs.com/hehesunshine/p/11673477.html
Copyright © 2011-2022 走看看