• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
 






canexjtuzju

记录
 
 

Powered by 博客园
博客园 | 首页 | 新随笔 | 联系 | 订阅 订阅 | 管理

随笔分类 -  算法

上一页 1 2 3 4

 
面试金典--3.3
摘要:1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #include 13 #in... 阅读全文
posted @ 2014-06-17 21:38 canexjtuzju 阅读(173) 评论(0) 推荐(0)
面试金典--min栈的实现
摘要:题目描述:实现一个包含min操作的栈,时间复杂度需要是O(1)思路:一开始的想法是添加辅助栈保存当前最小元素,但是这样存在的问题就是不能处理重复元素;于是.....我还是google了,找到如下锦囊妙计不需要额外的空间,栈顶保存的是最小元素,每次push比较,如果当前元素更小的话就更新栈顶,另外栈顶... 阅读全文
posted @ 2014-06-17 21:19 canexjtuzju 阅读(432) 评论(0) 推荐(0)
面试金典--一个数组实现三个栈(固定大小)
摘要:1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #include 13 usi... 阅读全文
posted @ 2014-06-17 20:30 canexjtuzju 阅读(195) 评论(0) 推荐(0)
编程之美--3.1
摘要:题目描述:给定s1,s2两个字符串,要求判定s2是否能够被s1做循环移位得到的字符串包含。思路:类似于面试金典字符串那一节最后一题,字符串拼接的思路,将s1 = s1+s1,这样只要能够移位得到包含s2那么就肯定在拼接后的s1中 1 #include 2 #include 3 #include ... 阅读全文
posted @ 2014-06-16 12:20 canexjtuzju 阅读(189) 评论(0) 推荐(0)
面试金典--5.2
摘要:题目描述:打印double类型,且在0~1之间的数的二进制表示思路:每次乘以2,相当于左移1位,判断当前位是0还是1。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #inc... 阅读全文
posted @ 2014-06-15 14:24 canexjtuzju 阅读(124) 评论(0) 推荐(0)
面试金典--5.1
摘要:题目描述:给定N,M两个32位整数,以及i、j,将i、j之间的位置为数M对应的二进制位 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include... 阅读全文
posted @ 2014-06-15 14:11 canexjtuzju 阅读(128) 评论(0) 推荐(0)
面试金典--检查链表是否是回文
摘要:题目描述:检查单链表是否是回文。思路:反转,比较(反转的时候可以借助栈来实现) 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 ... 阅读全文
posted @ 2014-06-15 13:25 canexjtuzju 阅读(304) 评论(0) 推荐(0)
面试金典--对链表表示的整数求和
摘要:题目描述:给定两个链表,逆序表示两个整数,对这两个链表进行求和。思路:注意进位即可,可以就地操作,但是实现稍微麻烦一点(如果不就地的话,可以转化成递归操作,代码更加简洁) 1 #include 2 #include 3 #include 4 #include 5 #include ... 阅读全文
posted @ 2014-06-15 13:08 canexjtuzju 阅读(312) 评论(0) 推荐(0)
面试金典--以x为基准对链表进行划分
摘要:题目描述:以给定值x为基准将链表分割成两部分,所有小于x的节点排在大于等于x的节点之前。思路:设置largehead,largetail和smallhead,smalltail,第一次找到小于或者大于等于x的节点时就更新head指针,后面遍历链表每次更新tail指针。实现没考虑空链表等边界情况。 1... 阅读全文
posted @ 2014-06-15 12:41 canexjtuzju 阅读(362) 评论(0) 推荐(0)
面试金典--删除链表某个节点,只能访问该节点
摘要:题目2.3:实现一个算法,删除单向链表中间的某个节点,只能访问该节点。将后续节点的值复制到当前节点即可,但是最后一个节点就不能删除了。另外我的实现中没考虑只有一个节点或者为空的情况 1 #include 2 #include 3 #include 4 #include 5 #include ... 阅读全文
posted @ 2014-06-15 12:23 canexjtuzju 阅读(217) 评论(0) 推荐(0)
面试金典--删除未排序链表重复节点
摘要:编写代码,删除未排序链表的重复节点思路:hash记录当前节点是否出现过 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 10 using namespa... 阅读全文
posted @ 2014-06-15 11:33 canexjtuzju 阅读(220) 评论(0) 推荐(0)
wikioi 1017--乘积最大
摘要:给定一个数串,以及K,求对这个数串K划分的乘积最大值。DP思路:一开始肯定想到的是递归,假设在某两个字符间有一个乘号,那么乘积最大就是乘号两边的区间接着划分的乘积最大值。于是状态空间表示如下dp[i][k]表示从0~i之间有K个乘号的乘积最大值,dp[i][k] = max(dp[j][k-1]*n... 阅读全文
posted @ 2014-06-13 22:00 canexjtuzju 阅读(380) 评论(0) 推荐(0)
Hulu实习面试题--对一个数进行划分,求最大乘积
摘要:题目描述:对一个给定正整数n,划分成若干个整数之和,然后这些整数的乘积最大我一开始给的思路是:进行递归,F(n) = max(F(n-i)*F(i))(1 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include ... 阅读全文
posted @ 2014-06-11 21:36 canexjtuzju 阅读(415) 评论(0) 推荐(0)
编程珠玑--变位词集合
摘要:有一步是必须处理的,就是对字符串进行排序;第二步的方法就比较多:(1)采用字符串哈希(求值)(2)排序后转化为24位的位向量(3)直接排序后的字符串作为标识(书上的方法) 1 #include 2 #include 3 #include 4 #include 5 #include 6 #i... 阅读全文
posted @ 2014-06-10 10:56 canexjtuzju 阅读(199) 评论(0) 推荐(0)
编程珠玑--左旋字符串
摘要:其实编程之美也有类似的题,这道题是编程珠玑第二章的题目。题目描述:给定一个字符串,将字符串循环移位K次。最简答的方法就是,通过O(n)的辅助空间,将数组循环移位,时间复杂度就是O(n)但是如果要求空间复杂度为O(1)呢?观察规律可知,对前K位反转以及后面的反转,最后对整个字符串反转就能达到O(1)的... 阅读全文
posted @ 2014-06-10 10:35 canexjtuzju 阅读(156) 评论(0) 推荐(0)
wikioi--1697 ⑨要写信
摘要:把n个元素的错排数记为Dn,显然D1=0,D2=1。当n≥3时,设不错排时i位置的元素为a[i],不妨设最后一个数a[n]排在了第k位,其中k≠n,也就是1≤k≤n-1。那么我们现在考虑第n位的情况。当a[k]排在第n位时,a[n]与a[k]的位置均已确定,除了a[n]和a[k]以外还有n-2个数,... 阅读全文
posted @ 2014-06-09 23:13 canexjtuzju 阅读(126) 评论(0) 推荐(0)
wikioi--1044 拦截导弹
摘要:题目链接:http://www.wikioi.com/problem/1044/题目其实就是最长上升子序列的变形。下面是两个重要定理:定理1 令(X,≤)是一个有限偏序集,并令r是其最大链的大小。则X可以被划分成r个但不能再少的反链。 其对偶定理称为Dilworth定理:定理2 令(X,≤)是一个有... 阅读全文
posted @ 2014-06-09 22:28 canexjtuzju 阅读(300) 评论(0) 推荐(0)
桶排序--小试牛刀
摘要:桶排序特点:在桶的大小和元素个数呈现线性关系的时候,复杂度是线性的,最差是O(n^2)(个人理解是当所有元素都在一个桶的时候,采用插入排序的时候);稳定排序(注意实现的时候:对同一个桶内元素的排序要使用稳定排序实现);空间复杂度比较高;桶排序的描述:(1)初始化桶,将元素放入到合适的桶内(2)对各个... 阅读全文
posted @ 2014-06-09 21:06 canexjtuzju 阅读(206) 评论(0) 推荐(0)
 

上一页 1 2 3 4