自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 leetcode-无重复最长字串

算法分析: 1)使用滑动窗口算法。/* 字符串 i到j中是否含有重复的字符 */static bool IsUniqe(char *s, int i, int j){ int charSet[128] = {0}; /* ASCII码表共128个字符集 */ int index = 0; int setIndex = 0; for (index...

2020-05-04 20:32:23 145

原创 【C语言】【栈的实现】

#define ARRAY_STACK 1#ifdef ARRAY_STACK/* 数据域结构 */typedef struct _StackNode { int data;} StackNode; typedef struct { int top; /* 栈顶位置 */ int maxSize; /* 栈中最多存放的元素 */ StackNode *...

2020-04-05 22:08:10 137

原创 【leetcode-字符串编码】

给定一个经过编码的字符串,返回它解码后的字符串。编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总是符合格式要求的。此外,你可以认为原始数据不包含数字,所有的数字只表示重复的次数 k ,例如不会出现像3a或2[4...

2020-04-05 21:49:01 303

原创 【C语言】动态数组vector实现

C语言中缺少类似C++ Vector或者Java ArrayList 的通用动态数组的库函数。但有些场景数组的容量没法确定,故自己造个简单的动态数组轮子,以便后续能使用得到。#include <stdlib.h>#include <stdio.h>#include <string.h>#include <stdbool.h>/* 数组...

2020-03-29 22:07:26 641 1

原创 【C语言】lucky string

【每天一道算法题】Lucky StringA string s is LUCKY if and only if the number of different characters in s is a fibonacci number. Given a string consisting of only lower case letters , output all its lucky non...

2020-03-29 16:25:40 254

原创 【数组】【leetcode-在指定的位置插入】

#include <stdio.h>#include <stdlib.h>#include <string.h>#if 0/* 顺序遍历 */int searchInsert(int* nums, int numsSize, int target){ int index = 0; int i = 0; if (nu...

2019-10-16 20:46:15 121

原创 【数组】【leetcode-只出现一次的数字】

给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例2:输入: [4,1,2,1,2]输出: 4实现说明-1:1、首先对数组进行排序2、一次遍历,两个一组判断数字是否相等,相等继续,不...

2019-10-01 21:21:14 93

原创 C语言-要点

1、联合体union联合体是多个变量共相一块内存,联合体的内存为,成员中占内存最大的成员为准。同一时间只能用到一个联合体成员。union Data{ int i; float f; char str[20];} data;如上联合体data,占用内存大小为 20 个字节。2、位域位域是C语言提供的更好的利用结构体内存空间的一种方式。...

2019-09-02 00:37:04 111

原创 vscode C++

{ "configurations": [ { "name": "Win32", "includePath": [ "${workspaceFolder}/**" ], "defines": [ "_DEBUG",...

2019-08-09 08:25:37 409

原创 左值与右值

1、左值L-value:L指的是location,表示可寻址。A value that has an address。2、右值:R-value:R指的是Read,表示可读。3、综述:左值右值是相对于表达式而言的。左值是能出现在表达式左边的表达式。左值表达式可以分为可读写的左值和只读的左值。右值是可以出现在表达式右边的表达式。它可以是不占内存的临时量或字面量。可以是不具有写入...

2019-08-05 11:41:26 83

原创 C++引用

引用是C++相较于C多出来的概念。1、什么是引用?应用变量是一个别名,也就是说,它是一个已经存在的变量的别名。一旦把引用初始化成某个变量,就可以使用该引用或者变量来指向变量。2、为什么引入引用?1)C++的引用是为了支持运算符的重载。为了让运算符重载的语法能够更接近内建的运算符,需要能够让一个函数返回一个左值。通俗的讲就是对一个函数的返回值赋值。2)修饰函数的输入参数,作为参数...

2019-08-05 11:40:35 147

原创 Linux 网络编程之socket编程(一)

1、socket    1)socket可以看成用户进程与内核协议栈的编程接口。    2)socket不仅可以用于本机的进程间通信,还可以用于网络上不同主机的进程间通信。2、ipv4套接字地址结构struct sockaddr_in{    short sin_family;/*Address family一般来说AF_INET(地址族)PF_INET(协议族)*/   ...

2018-08-26 22:21:35 114

原创 【数组】【买卖股票的最佳时机】

【题目描述】给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。【解题思路】一次遍历数组,只要递增,只要后一天的价格比前一天的大,就进行股票交易,从而累计利润。【代码实现】int maxProfit(int* prices, int pricesSize) { i...

2018-07-22 21:47:40 155 1

原创 【数组】【删除排序数组中重复的项】

【题目要求】    给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。【解题思路】题目要求不能使用额外的空间,并且复杂度是O(1),所以需要一次遍历去解决问题。采用双指针法:一个慢指针 i,一个快指针 j。只要 j 指向的值等于 i 指向的值...

2018-07-22 20:59:53 164

原创 Linux 网络编程之一个简单的客户端服务器程序

1、服务端#include "includes.h"#include &lt;sys/types.h&gt; #include &lt;sys/socket.h&gt;#include &lt;linux/in.h&gt;#define SERVER_PORT 8888 //监听的端口号#define MAX_BUFFER_LEN (256) //最大的buffe...

2018-07-09 23:10:32 805

原创 【环境搭建】ubuntu开启SSH和配置Samba服务

1、背景    家里有两台电脑,一台安装的是Linux、一台是windows。近期想在家里学习Linux环境下的程序编写,但是vi等工具使用不是很溜。故需要将Linux作为服务器,然后再windows上编程。简答记录方便日后翻阅。2、环境搭建    2.1 Linux开启SSH服务 安装ssh服务程序 :sudo apt-get install openssh-server启动ssh服务:sudo...

2018-06-20 20:38:44 532

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除