随笔分类 - 数据结构和算法
摘要:因为明年的工作可能要涉及到加密的问题,所以要看一下加密方面,刚好之前对于web开发方面的加密,https也一直有疑问,于是就买了本图解密码技术来看看 1.如何保证数据只能单向解密: 比较流行的一个就是公钥和私钥,公钥负责加密,私钥负责解密,只要私钥没有被拿到,数据就不会被破解,比较流行的 就是RSA
阅读全文
摘要:原文地址:http://zhedahht.blog.163.com/blog/static/254111742011125100605/看到这个的题目第一个反应就是位运算,但是想不通怎么进行位运算,看了后面才知道,博主举了个例子就是5+17不进位,算出5+17=12,如下图,就是小学生的运算,下面的1就是进位这样最后12+十位的1就是22同样,二进制也可以,5的二进制是101,17是10001,运算方法 00101+ 10001—————— 10100+ 10—————— 10110最后运算就是10110就是22了从这里也可以看出来,二进制里面,1+1和0+0,原位为0,1+0原位为1,和异或
阅读全文
摘要:编程之美上的题目,具体忘记了,有一个队列,定义了push,pop,MaxElement三个函数,其中MaxElement要返回队列中最大的元素,第一次看这个题目就是遍历,每次MaxElement的时候遍历一遍队列,具体代码不写了,三个操作的开销为:1 push:O(1) 2 pop:O(1) 3 MaxElement:O(Length(que))于是换成另外一种方法,设置一个MaxVal,每次push与进入队列的元素进行比较,这样代码如下:(为了节省篇幅,利用了STL) 1 int main(void) 2 { 3 queue<int> que; 4 int MaxVal=-1;
阅读全文
摘要:#include <stdio.h>#include <stdlib.h>typedef struct _list{int data;struct _list *next;}list,*plist;plist create_list(int *a,int len){plist head=NULL;plist ptr=NULL;plist newnode=NULL;head=...
阅读全文