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

网站建设公司名称重庆网络推广公司

网站建设公司名称,重庆网络推广公司,广州哪里有做网站的,多少钱立案刷力扣的第一天脑子要长出来的感觉(为什么大四才开始啊啊啊啊啊啊啊啊啊啊啊啊) emmm,自己还是想不太出来(只是一点想法),可能还是会参考评论区,求各位轻喷 分析:带符号一定不是回…

刷力扣的第一天脑子要长出来的感觉(为什么大四才开始啊啊啊啊啊啊啊啊啊啊啊啊)

emmm,自己还是想不太出来(只是一点想法),可能还是会参考评论区,求各位轻喷

  1. 分析:带符号一定不是回文,要像个好办法将121,第n-1位和第2位联系起来
    1. 取余得出后一位。
    2. %去第n位
    3. if(n/10==n%10){ true}
    4. 外面再嵌套一层do while
 public boolean isPalindrome(int x) {if(x<0){return false;}int cur = 0;int num = x;while(num != 0) {/*例如:121  第一次 cur=1   num=12121  第二次 cur=1*10+12%10=12num=1第三次 cur=12*10+1num=0退出循环*/cur = cur * 10 + num % 10;//将原来的数倒置,num /= 10;}return true;//我的想法,不能通过全部案例,可以改成/* return  cur==x; //倒置结果相等位true,*/}

判断到一半就退出

  1. 罗马数字转整数

    1. 分析题目,找规律
    2. 小值在大值左边,减小值
    3. 小值在大值右边,加小值
    /*没想到用switch  case来转换字符与数值的关系*/
    class Solution {private int getValue(char ch) {//从字符转化成数字switch(ch) {case 'I': return 1;case 'V': return 5;case 'X': return 10;case 'L': return 50;case 'C': return 100;case 'D': return 500;case 'M': return 1000;default: return 0;}}public int romanToInt(String s) {int sum = 0;int preNum = getValue(s.charAt(0));//获取第一个字符,更具数值的大小判断用-/+法for(int i = 1;i < s.length(); i ++) {int num = getValue(s.charAt(i));if(preNum < num) {sum -= preNum;} else {sum += preNum;}preNum = num;}sum += preNum;return sum;}
    }
    1. 提交的版本
    class Solution {public int romanToInt(String s) {int sum=0;//用于记录得出的值int first=getValue(s.charAt(0));//s.char()获取字符,调用方法或得数值 /*for来读取有几个数值,并比较左值和右值的大小来判断用-/+ */for(int i = 1;i < s.length(); i ++) {int num = getValue(s.charAt(i));//获取后面的数值if(first < num) {//first不一定就是第一个值啦sum -= first;} else {sum += first;}first = num;}sum += first;return sum;}private int getValue(char ch) {switch(ch) {case 'I': return 1;case 'V': return 5;case 'X': return 10;case 'L': return 50;case 'C': return 100;case 'D': return 500;case 'M': return 1000;default: return 0;}}
    }
    
  2. 最长前缀(王道数据结构中有类似题目)

    1. c++将字符串分解成一个一个字符,使用两个指针,同时从第一个空间开始便利,对比两个空间里的字符是不是一样的。
    2. java:找个最短的字符,读取长度,在长度内和另一个字符一一比较,不同就跳出,并记录个数,好输出
/*我的,不能通过所以的案例*/
class Solution {public String longestCommonPrefix(String[] strs) {/*如果有空字符,就没有共同前缀 */if(strs.length == 0) return " ";/*用一个字符串来比较 */String a = strs[0];/**for循环来一次比较,并在跳出前记录以及比较过的字符串 */for(int i =1;i<strs.length;i++) {int j=0;for(;j<a.length() && j < strs[i].length();j++) {if(a.charAt(j) != strs[i].charAt(j)){break;}}a = a.substring(0, j);//j用来记录相同的字符个数,if(a.equals("")){return " ";//删除空格就可以通过所有的了}}return a;//输出字符}}
  1. 有效括号(王道)

    /*switch  case  case里面用ifelse,但是代码量比较大,要长脑子 了么*/
    class Solution {public boolean isValid(String s) {int n=s.length();if(n%2!=0) return false;//入一半的栈int[] stack;stack=new int[n];int top=-1;for(int i=0;i<n;i++){int c = s.charAt(i);if(c=='('||c=='{'||c=='['){stack[++top]=c;}//只有左边可以入栈else{if(top!=-1){switch(c){case ')':if (stack[top]!='(') return false;break;case '}':if (stack[top]!='{') return false;break;case ']':if (stack[top]!='[') return false;break;}top--;}else return false;//右半边不能入栈}} if(top!=-1) return false;return true;}
    }
    /*用栈,进出栈来比较左右括号*/
    
  2. 合并链表(王道)

/*链表的比较,以及语法还是要再加强一下,好不容易会一个,因为链表.的使用方法纠结好久,给了结构体,所以用.val和.next来移动指针和取值
public class ListNode {*     int val;*     ListNode next;*     ListNode() {}*     ListNode(int val) { this.val = val; }*     ListNode(int val, ListNode next) { this.val = val; this.next = next; }* }*/
class Solution {public ListNode mergeTwoLists(ListNode list1, ListNode list2) {if(list1 == null) {return list2;}if(list2 == null) {return list1;}if(list1.val < list2.val) {list1.next = mergeTwoLists(list1.next, list2);return list1;} else {list2.next = mergeTwoLists(list1, list2.next);return list2;}}
}
  1. 删除重复项(王道有)我是菜菜,没做出来
int length = nums.length;if (length <= 1) {return length;}int j = 0;
/*j作为一个哨兵,用于记录删除后后续应填入数的位置*/for (int i = 0; i < length; i++) {if (nums[i] != nums[j]) {nums[++j] = nums[i];//重点,相等时j不变,不移动,等不等时,移动指针,放入nums[i]的值}}return j+1;
/*在26的基础上改编*/
class Solution {public int removeElement(int[] nums, int val) {
int length = nums.length;if (length < 1) {return length;}/*不加的话,会有一个例子不过*/if(length==1){if(nums[0]==val){return 0;}}int j = 0;
/*j作为一个哨兵,用于记录删除后后续应填入数的位置*/for (int i = 0; i < length; i++) {if (nums[i]!=val) {nums[j++] = nums[i];//重点,相等时j不变,不移动,等不等时,移动指针,放入nums[i]的值}}return j;}
}
  1. /*呦吼,完全自己写的没有参考哦,脑子开始长了*/
    class Solution {public int searchInsert(int[] nums, int target) {int j=0;for(int i=0;i<nums.length;i++){if(nums[i]<=target){if(nums[i]<target){j++;}else{break;}}else{break;}}return j;}
    }
    
http://www.ds6.com.cn/news/87038.html

相关文章:

  • 做网站推广的前期条件互联网营销师资格证
  • 建造师个人业绩查询系统长沙seo优化服务
  • 沈阳网站建设开发维护百度收录批量查询工具
  • 成都网站建设托管济南做网站比较好的公司
  • 网站优化公司排名深圳semantic
  • idea可以做网站吗百度官网入口
  • 中国煤炭建设协网站郑州网络营销推广机构
  • 重庆网站建设齐重庆零臻科技交换友情链接的方法
  • 客户管理系统哪家好简述seo和sem的区别
  • 无需下载直接登录qq手机版黄山seo推广
  • 做简历的网站有seo工作室
  • html5网站优势互联网全网推广
  • 成都网站建设哪儿济南兴田德润怎么联系成人短期就业培训班
  • 怎么换自己的网站服务器大片ppt免费下载安装
  • 三亚做网站的公司竞价排名规则
  • 淘宝网站建设代码百度2022年版本下载
  • 苏州建设职业培训中心官网天津优化加盟
  • 网站关键词策略重庆黄埔seo整站优化
  • 在合肥做网站前端月薪大概多少青岛seo网络推广
  • 做网站费用走什么科目百度推广的方式有哪些
  • 制作app连接网站今日重大国际新闻
  • 公司网站建设的相关建议滕州百度推广
  • 云服务器怎么发布网站seo优化排名方法
  • 网站 添加备案号手机网站制作教程
  • 办公用品网站建设市场定位东莞推广
  • 如何在网站做qq群链接沙洋县seo优化排名价格
  • 佛山网站免费制作网上做广告宣传
  • 公司想为一个产品做多个网站花都网站建设公司
  • 建立企业的网站有哪几种方案国色天香站长工具
  • 网站开发基础教程免费的推广平台