4 dengyinyi1166

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 135w+

用Python实现一个爬虫爬取ZINC网站进行生物信息学数据分析

  最近接到实验室的导师交给我的一个任务,就是他们手头有很多smile表达式,格式类似这种:C(=C(c1ccccc1)c1ccccc1)c1ccccc1(这是生物信息学中表达小分子结构的一种常用表达式),他们需要对每个smile表达式在ZINC网站(生物信息学数据网站)上进行搜索,然后找到对应的ZINC号、小分子供应商、构象预测等信息。基本步骤如下:点击查找之后网页就会跳转到...

2019-06-02 12:34:00

Java实现锁、公平锁、读写锁、信号量、阻塞队列、线程池等常用并发工具

锁的实现锁的实现其实很简单,主要使用Java中synchronized关键字。public class Lock { private volatile boolean isLocked = false; private Thread lockingThread = null; public synchronized void lock() throws ...

2019-05-09 19:07:00

自己动手实现一个轻量级的RPC框架

前言最近学习RPC的时候,自己手动写了一个简易的RPC框架,详细代码可见GitHub:https://github.com/Jeysin/RPC。以下是这个项目的README:简介Java语言编写的一个轻量级的RPC框架,基于TCP协议,与SpringBoot集成,让远程调用像本地调用一样便捷。特性与SpringBoot无缝衔接,实现RPC调用过程对用户无感知。并基于Java...

2019-02-25 10:54:00

Java 8新特性stream API用法总结

前言  Stream 作为 Java 8 的一大亮点,它与 java.io 包里的 InputStream 和 OutputStream 是完全不同的概念。它也不同于 StAX 对 XML 解析的 Stream,也不是 Amazon Kinesis 对大数据实时处理的 Stream。Java 8 中的 Stream 是对集合(Collection)对象功能的增强,它专注于对集合对象进...

2018-12-22 17:37:00

自己动手实现一个轻量级Spring IOC容器

  最近在学Spring框架,相信学习过Spring的同学都对Spring中的IOC容器印象深刻,它像一个黑盒一样,可以从我们的xml配置文件中读取bean,并将相应的属性注入到bean中。那么这是如何实现的呢,本文将通过一个小例子仿照Spring的方式实现一个简单的IOC容器,使其具有IOC容器的基本功能,包括从xml文件中读取bean,注入属性等功能。1、首先定义两个POJO:H...

2018-12-09 15:08:00

如何在Spring中使用自定义标签

  最近学习了一下如何在spring的xml文件中使用自定义的标签,把自己操作的过程记录下来。开始之前,最好先对spring的xml文件的格式有所了解,已经有文章写得很好了,这里不再赘述,详见:https://www.cnblogs.com/gonjan-blog/p/6637106.html。  接下来我们开始:1、首先,pom文件中导入spring相关依赖:pom.xml...

2018-12-02 13:58:00

Dijkstra 最短路径算法

详见:http://wiki.jikexueyuan.com/project/easy-learn-algorithm/dijkstra.html 1 #include<iostream> 2 #include<vector> 3 using namespace std; 4 #define MAX 10000 5 void printAr...

2018-08-14 17:04:00

Floyd 最短路径算法

详见:http://wiki.jikexueyuan.com/project/easy-learn-algorithm/floyd.html 1 #include<iostream> 2 #include<vector> 3 using namespace std; 4 #define MAX 10000; 5 void printArr(...

2018-08-14 16:10:00

395. 硬币排成线 II

395.硬币排成线 II有n个不同价值的硬币排成一条线。两个参赛者轮流从左边依次拿走 1 或 2 个硬币,直到没有硬币为止。计算两个人分别拿到的硬币总价值,价值高的人获胜。请判定第一个玩家是输还是赢?样例给定数组 A =[1,2,2], 返回true.给定数组 A =[1,2,4], 返回false.思路:动...

2018-08-13 18:16:00

nodejs+express搭建一个高性能WebServer

  由于最近的项目中要用到nodejs做一个WebServer服务器,所以最近学习了一下nodejs的语法和express框架。学习的过程中也参考了许多文章博客,同时也有一些自己的心得体会,现在都一一记录下来。  首先,第一个问题,为什么选了nodejs来做WebServer?或者换一种说法,用nodejs做WebServer与其他语言相比有哪些优势?nodejs是运行chrome的...

2018-07-17 15:08:00

关于C/C++中全局变量的初始化问题

  前几天我把搜索引擎项目部署到腾讯云上运行的时候,程序暴露出来一个问题,就是关于C/C++中全局变量的初始化的问题,全局变量之间相互引用,导致全局变量的初始化时机由于编译器的不同而不同,程序执行起来由于访问到了未初始化的全局变量直接coredump,之前在自己电脑上没发现这个问题也是奇迹,移到腾讯云上运行的时候这个问题才暴露出来,今天记录下来,权当一个教训。其实《Effective C...

2018-04-13 11:14:00

阿里、腾讯、网易、头条、微策略、CVTE、百词斩面试经验总结

  春招基本上已经告一段落,一个多月来大大小小也面试过几家公司,从一开始的接到面试电话就惶恐不安,说话都不利索,到后来的还算能和面试官侃侃而谈,能够就面试中的一些开放性问题提出自己的解法。窃以为自己在不断的面试中还是有进步的,不论是技术上的还是自我表达和与人沟通上的。回想起自已过去的一个月面过的公司其实应该是挺多的了,大大小小应该参加过十几场面试,电话面试也有,视频面试也有,这里总结一点...

2018-04-10 11:00:00

LintCode:Android Unlock Patterns

Given an Android3x3key lock screen and two integersmandn, where1 ≤ m ≤ n ≤ 9, count the total number of unlock patterns of the Android lock screen, which consist of minimum ofmkeys and max...

2018-03-27 10:41:00

LintCode:寻找丢失的数 II

寻找丢失的数 II给一个由 1 -n的整数随机组成的一个字符串序列,其中丢失了一个整数,请找到它。注意事项n <= 30您在真实的面试中是否遇到过这个题?Yes样例给出 n =20, str =19201234567891011121314151618丢失的数是17,返回这个数。...

2018-03-26 21:36:00

非递归实现数字的全排列

  首先,对于数字1,2,3,4而言,如果我们能求出其下一个排列,那么不断地求其下一个排列,得到的就是全排列,关于怎么求一个排列的下一个排列,见:http://www.cnblogs.com/jeysin/p/8647879.html. 基于这种思路,可以用非递归的方式实现求数字的全排列,以下是具体实现 1 #include<iostream> 2 #includ...

2018-03-26 10:43:00

LintCode:下一个排列

下一个排列给定一个整数数组来表示排列,找出其之后的一个排列。注意事项排列中可能包含重复的整数您在真实的面试中是否遇到过这个题?Yes样例给出排列[1,3,2,3],其下一个排列是[1,3,3,2]给出排列[4,3,2,1],其下一个排列是[1,2,3,4]思路:  参考:https://www.c...

2018-03-26 10:24:00

LintCode:排列序号

排列序号I给出一个不含重复数字的排列,求这些数字的所有排列按字典序排序后该排列的编号。其中,编号从1开始。您在真实的面试中是否遇到过这个题?Yes样例例如,排列[1,2,4]是第1个排列。思路:康托展开的应用,关于康托展开,见:http://www.cnblogs.com/jeysin/p/8644820.html...

2018-03-25 23:29:00

康托展开式及其逆过程

康托展开式:  X=a[n]*(n-1)!+a[n-1]*(n-2)!+...+a[i]*(i-1)!+...+a[1]*0! ,其中a[i]表示在未出现的元素中比当前元素小的个数。康托展开式可用于求一个排列位于全排列的第几个。同样,其逆过程可以求在全排列中的第k个排列是多少。具体实现如下:例题1:给出一个数字n和一个排列,返回这个排列在数字1-n的全排列(按字典序)中排第几...

2018-03-25 15:18:00

网易笔试题:推箱子

大家一定玩过“推箱子”这个经典的游戏。具体规则就是在一个N*M的地图上,有1个玩家、1个箱子、1个目的地以及若干障碍,其余是空地。玩家可以往上下左右4个方向移动,但是不能移动出地图或者移动到障碍里去。如果往这个方向移动推到了箱子,箱子也会按这个方向移动一格,当然,箱子也不能被推出地图或推到障碍里。当箱子被推到目的地以后,游戏目标达成。现在告诉你游戏开始是初始的地图布局,请你求出玩家最少需...

2018-03-19 18:22:00

C++11新特性atomic和thread

  今天才发现C++11原来支持原子操作,还支持thread类创建线程,真的是越来越6了。之前做项目的时候创建线程都是用POSIX标准的pthread_create函数,然后线程同步一般用的都是pthread_mutex。今天又get了一个新技能,可以用thread类来创建线程,用atomic_flag实现自旋锁来进行线程同步,不说了不说了,赶紧拿小本本记下来: 1 #inclu...

2018-03-17 16:20:00

查看更多

勋章 我的勋章
    暂无奖章