随笔分类 -  C语言

上一页 1 2

Z字形变换
摘要:将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。比如输入字符串为 "LEETCODEISHIRING" 行数为 3 时,排列如下:L C I RE T O E S I I GE D H N之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:"LCIRETOESII 阅读全文

posted @ 2020-03-04 14:23 PigDragon 阅读(546) 评论(0) 推荐(0)

两数相加
摘要:给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + 阅读全文

posted @ 2020-03-03 22:33 PigDragon 阅读(286) 评论(0) 推荐(0)

整数反转
摘要:给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例 1:输入: 123输出: 321 示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据 阅读全文

posted @ 2020-03-03 20:45 PigDragon 阅读(201) 评论(0) 推荐(0)

最长回文子串
摘要:给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。示例 1:输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。示例 2:输入: "cbbd"输出: "bb" 方法一: 暴力破解 首先,先给出第一个解法,Brute force的方法,虽 阅读全文

posted @ 2020-03-03 10:44 PigDragon 阅读(174) 评论(0) 推荐(0)

回文数
摘要:判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1:输入: 121输出: true示例 2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入: 10输出: fa 阅读全文

posted @ 2020-03-02 12:43 PigDragon 阅读(535) 评论(0) 推荐(0)

计算无重复字符的最长子串
摘要:题目要求:给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 包含测测试用例: 示例 1:输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以 阅读全文

posted @ 2020-03-01 23:41 PigDragon 阅读(368) 评论(0) 推荐(0)

C实现哈希表
摘要:1 哈希表原理 这里不讲高深理论,只说直观感受。哈希表的目的就是为了根据数据的部分内容(关键字),直接计算出存放完整数据的内存地址。 试想一下,如果从链表中根据关键字查找一个元素,那么就需要遍历才能得到这个元素的内存地址,如果链表长度很大,查找就需要更多的时间. void* list_find_by 阅读全文

posted @ 2017-08-31 18:48 PigDragon 阅读(1264) 评论(0) 推荐(0)

哲学家就餐问题 C语言实现
摘要:场景: 原版的故事里有五个哲学家(不过我们写的程序可以有N个哲学家),这些哲学家们只做两件事--思考和吃饭,他们思考的时候不需要任何共享资源,但是吃饭的时候就必须使用餐具,而餐桌上的餐具是有限的,原版的故事里,餐具是叉子,吃饭的时候要用两把叉子把面条从碗里捞出来。很显然把叉子换成筷子会更合理,所以: 阅读全文

posted @ 2017-06-06 14:36 PigDragon 阅读(4984) 评论(1) 推荐(0)

C语言计算两个日期间隔天数
摘要:在网上看到了一个C语言计算日期间隔的方法,咋一看很高深,仔细看更高神,很巧妙。 先直接代码吧 #include <stdio.h> #include <stdlib.h> int day_diff(int year_start, int month_start, int day_start , in 阅读全文

posted @ 2017-03-22 15:16 PigDragon 阅读(2344) 评论(0) 推荐(0)

select函数的详细使用(C语言)
摘要:Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如connect、accept、recv或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,如果事件没 阅读全文

posted @ 2017-03-19 11:37 PigDragon 阅读(15053) 评论(0) 推荐(1)

linux下setsockopt函数的使用
摘要:1.closesocket(一般不会立即关闭而经历TIME_WAIT的过程)后想继续重用该socket:BOOL bReuseaddr=TRUE;setsockopt(s,SOL_SOCKET ,SO_REUSEADDR,(const char*)&bReuseaddr,sizeof(BOOL)); 阅读全文

posted @ 2017-03-14 18:37 PigDragon 阅读(1190) 评论(0) 推荐(0)

创建守护进程步骤与setsid()
摘要:原创:http://www.cnblogs.com/mickole/p/3188321.html 一,守护进程概述 Linux Daemon(守护进程)是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。它不需要用户输入就能运行而且提供某种服务,不是对整个系 阅读全文

posted @ 2017-03-14 15:49 PigDragon 阅读(306) 评论(0) 推荐(0)

C语言Makefile文件制作
摘要:本文摘抄自“跟我一起写Makefile ”,只是原文中我自己感觉比较精要的一部分,并且只针对C语言,使用GCC编译器。 原文请看这里:http://wiki.ubuntu.org.cn/%E8%B7%9F%E6%88%91%E4%B8%80%E8%B5%B7%E5%86%99Makefile 写完之 阅读全文

posted @ 2017-03-14 14:48 PigDragon 阅读(898) 评论(0) 推荐(0)

上一页 1 2