目录

一、最后一个单词长度

1、题目描述

2、题解

3、源码

二、加一

1、题目描述

2、题解

3、源码

三、二进制求和

1、题目描述

2、题解

3、源码

四、x的平方根

1、题目描述

2、题解

3、源码

五、爬楼梯

1、题目描述

2、题解

3、源码


一、最后一个单词长度

1、题目描述

2、题解

3、源码

int lengthOfLastWord(char * s){int count=0;for (int i = strlen(s) - 1;i >= 0;i--){if(s[i] != ' '){count++;}if(s[i]==' '&& count!=0) break;}return count;
}

二、加一

1、题目描述

2、题解

3、源码

/*** Note: The returned array must be malloced, assume caller calls free().*/
int* plusOne(int* digits, int digitsSize, int* returnSize){int* ans_arr = (int*)malloc(sizeof(int)*(digitsSize+2)); // 申请一个新的空间,之所以加二是为了防止进位产生多了一位int i,n =0;if (digits[digitsSize-1] != 9){//最后一位不为9*returnSize = digitsSize;ans_arr[digitsSize-1] = digits[digitsSize-1] + 1;//最后一位进行加一操作for (i = 0;i<digitsSize-1;i++){//其它位置复制即可ans_arr[i] = digits[i];}return ans_arr;}else {//最后一位为9for(i = 0;i < digitsSize;i++){if (digits[i] == 9) {n++;//记录9的个数,判断是否全为9}}if (n == digitsSize) {//全为9*returnSize = digitsSize + 1;ans_arr[0] = 1;//第一位for (i = digitsSize ; i > 0;i--){ans_arr[i] = 0;//其他位置}return ans_arr;}else {//不全为9int a = digitsSize - 1;*returnSize = digitsSize;while(digits[a] == 9){//从后往前找到9的位置ans_arr[a] = 0;--a;}ans_arr[a] = digits[a] + 1;for (i = 0;i<a;i++){ans_arr[i] = digits[i];}return ans_arr;}}return ans_arr;
}

三、二进制求和

1、题目描述

2、题解

3、源码

char * addBinary(char * a, char * b){// char* r = (char*)malloc(sizeof(char) * (longlen + 2));// memset(r,0,sizeof(char) * (longlen + 2));// r[0] = '0';int alen = strlen(a);int blen = strlen(b);int longlen = alen > blen ? alen : blen;int i = alen - 1;int j = blen - 1;int k = longlen ;int t = 0;char* r = (char*)malloc(sizeof(char) * (longlen + 2));memset(r,0,sizeof(char) * (longlen + 2));//初始化数组r[0] = '0';while (k){if(i >= 0 && j >= 0) {if(a[i] == '1' && b[j] == '1') {r[k] = '2'; } else if((a[i] == '1' && b[j] == '0') || (a[i] == '0' && b[j] == '1')) {r[k] = '1';} else {r[k] = '0';}} else if (i >= 0 && j < 0) {r[k] = a[i];} else if (i < 0 && j >= 0) {r[k] = b[j];} else {break;}i--;j--;k--;}bool plus = false;for (i = longlen;i>=0;i--){if(r[i] == '2'){if(plus == true){r[i] ='1';}else {r[i] = '0';}plus = true;}else if (r[i] == '1'){if(plus == true){r[i] = '0';plus = true;}else {plus = false;}}else if (r[i] == '0'){if(plus == true) {r[i] = '1';plus = false;} else{plus = false;}}}r[longlen+1] = '\0';if(r[0] == '0') {return r+1;} else {return r;}}

四、x的平方根

1、题目描述

2、题解

3、源码

int mySqrt(int x){int leftNum = 1;int rightNum = x / 2 + 1;int midNum ;int sqrt;if (x==0) {return 0;}while(leftNum <= rightNum){midNum = (leftNum+rightNum) /2;sqrt = x / midNum;if (sqrt == midNum) {return midNum;}else if (sqrt < midNum)  {rightNum = midNum - 1;}else if (sqrt > midNum) {leftNum = midNum + 1;}}return leftNum - 1;
}

五、爬楼梯

1、题目描述

2、题解

3、源码


int climbStairs(int n) {int p = 0, q = 0, r = 1;for (int i = 1; i <= n; ++i) {p = q;q = r;r = p + q;}return r;
}

LeetCode C语言刷题——day1相关推荐

  1. LeetCode C语言刷题——day2

    目录 一.删除排序列表中的重复元素 1.题目描述 2.题解 3.源码 二.二叉树的最大深度 1.题目描述 2.题解 3.源码 三.将有序数组转换成二叉搜素树 1.题目描述 2.题解 3.源码 四.将二 ...

  2. c语言刷题(牛客网)

    c语言刷题(牛客网100道基础题) 学习没有捷径,唯有重复多练,这是浩克为大家找的牛客网刷题资源,如果你正在学或者学完了都可以来检验一下自己能力. 浩克也会专门开个专栏来讲解c语言刷题,让大家对c语言 ...

  3. 关于C语言刷题(#define宏定义函数的常见错误)

    关于C语言刷题(#define宏定义函数的常见错误) 首先我们来先看对#define的定义 define,宏定义,C语言中预处理命令一种.分为无参宏定义和带参宏定义.无参宏定义的一般形式为:#defi ...

  4. Nowcoder《C语言刷题笔记》BC1-BC15

    Nowcoder <C语言刷题笔记> BC1-BC15 文章目录 Nowcoder <C语言刷题笔记> BC1-BC15 0x00 写在前面 0x01 简单输出 BC1 Now ...

  5. Leetcode每日必刷题库第80题,如何在不使用外部空间的情况下对有序数组去重?

    LeetCode的第80题,有序数组去重II(Remove Duplicates from Sorted Array II). 这题的官方难度是Medium,通过率是43.3%,点赞1104,反对69 ...

  6. 力扣(LeetCode)打卡刷题交流计划(长期维护)

    前言 忙忙活活暑期过去了一半,在即将升学的日子里,打算干点什么东西,由于实力以及经验的欠缺没有创群和大家讨论,但我更喜欢以更实在的方式--能作点什么--和大家一起从0打开力扣LeetCode, 对,没 ...

  7. leetcode 高薪_LeetCode刷题实战69:x 的平方根

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

  8. Leetcode按Tag刷题

    按照Leetcode的Tag来刷题,从easy到hard刷题 关于如何让Leetcode按难易程度排序,可按以下步骤: 1. 进入Leetcode后,点击code 2.点击code后,可查看所有题目, ...

  9. LeetCode:数组刷题(17道经典题目)

    LeetCode 数组刷题(17道经典题目) 本文带来的是以数组为主题的经典题目,主要实现是C++,部分题目也用Python实现了. 704. 二分查找 35.搜索插入位置 34. 在排序数组中查找元 ...

最新文章

  1. ubuntu php session 删除,session_unset()和session_destroy()用法分析
  2. 大数据实战之环境搭建(七)
  3. Tomcat performance optimization through consolidated log file handlers
  4. Javascript简单教程汇总
  5. 前端工程师必须知道的vue前端面试题目汇总
  6. 数学--数据处理--非极大值抑制(NMS)
  7. [翻译] GoogleMaterialDesignIcons
  8. Android build.gradle(app)介绍
  9. Java开发笔记(二十三)数组工具Arrays
  10. javascript写的关于静态页面获取URL传递参数的函数[原创]
  11. python 时间序列预测_使用Python进行动手时间序列预测
  12. 【CodeForces - 1051A】Vasya And Password (构造,水题)
  13. python迭代器与生成器答案_史上最全 Python 迭代器与生成器
  14. 经典面试题(8):关于逻辑运算符,下面代码运行的结果是什么?
  15. Python生成器实现及yield关键字
  16. 华为Mate X折叠屏手机即将上市:支持5G 升级后置四摄
  17. 百度网盘就“用户激励计划”道歉;沈义人卸任 OPPO 全球营销总裁;Python 2.7.18 发布| 极客头条...
  18. Siverlight 自定义TreeView 显示带连接线的组织结构树
  19. jvm分析工具JProfiler详解
  20. 文章原创度检测工具哪个最好用?怎么操作是最好的?

热门文章

  1. opencv threshold_基于深度学习OpenCV与python进行字符识别
  2. python3下使用cv2.imwrite存储带有中文路径图片或者绝对路径图片
  3. 重磅福利 | 全网唯一,多年踩坑经验,探索测试策略新奇方法之案例剖析(一)...
  4. 【工具】SecureCRT安装和注册
  5. Spring的两种代理方式:JDK动态代理和CGLIB动态代理
  6. Judy alpha 第七天
  7. linux文件管理 - 系统目录结构
  8. ReentrantLock 分析
  9. Java Web学习总结(10)学习总结-EL表达式
  10. js图片前端压缩多图上传(旋转其实已经好了只是手机端有问题要先压缩再旋转)...