07 2018 档案

摘要:由于我看的是远古教程,所以里面各种驱动jar包还有c3p0包都是远古版本,对于最新版本的jdbc已经失去的作用,所以我在这里重写一下! 1.首先是c3p0的位置,package的外面,src的里面 2.然后想使用c3p0数据库链接池的各种jar包,按照名字一个一个来: 其中c3p0的三个包为上图的1 阅读全文
posted @ 2018-07-31 23:03 苍鼠 阅读(136) 评论(0) 推荐(0)
摘要:如果从事JAVA相关的开发,都不可避免的要用到抽象和封装,这是JAVA的一个特点,同时也是每个开发者必须掌握的,JAVA是这样,Android更是如此。而设计模式就是告诉我们应该如何写出高效且更具应用性和拓展性的代码,最近也是学习了几类比较常用的设计模式,下面一一列举出来,虽然说的不细,但是应该知道 阅读全文
posted @ 2018-07-27 11:18 苍鼠 阅读(281) 评论(0) 推荐(0)
摘要:线程之间的锁有:互斥锁、条件锁、自旋锁、读写锁、递归锁。一般而言,锁的功能越强大,性能就会越低。 1、互斥锁 互斥锁用于控制多个线程对他们之间共享资源互斥访问的一个信号量。也就是说是为了避免多个线程在某一时刻同时操作一个共享资源。例如线程池中的有多个空闲线程和一个任务队列。任何是一个线程都要使用互斥 阅读全文
posted @ 2018-07-27 11:11 苍鼠 阅读(16940) 评论(0) 推荐(3)
摘要:我们常用到的STL容器有vector、list、deque、map、multimap、set和multiset,它们究竟有何区别,各自的优缺点是什么,为了更好的扬长避短,提高程序性能,在使用之前需要我们了解清楚。 verctor vector类似于C语言中的数组,它维护一段连续的内存空间,具有固定的 阅读全文
posted @ 2018-07-27 11:06 苍鼠 阅读(4275) 评论(1) 推荐(4)
摘要:几种常见的程序命名规则正确并形象地给函数、变量命名,不仅可以增加程序的可读性,也是程序员编程风格的一种反映。较好的命名习惯,可以有效的提高程序的可维护性。以下介绍几种常用的变量命名规则。一、匈牙利命名法:广泛应用于Microsoft Windows这类环境中。这种命名技术是由一位能干的 Micros 阅读全文
posted @ 2018-07-27 10:24 苍鼠 阅读(1922) 评论(0) 推荐(1)
摘要:覆盖范围很广,主要内容我概括一下,毕竟是第一次面试,还是要积累经验的。 1.匈利亚命名法则 2.C++常函数 3.C++虚函数 4.STL的底层实现(算法) 5.STL容器各自的优缺点(要求比较) 6.STL容器的操作(最好手写) 7.线程(锁的机制,有几种,比较?) 8.设计模式 9.数据库的基本 阅读全文
posted @ 2018-07-26 17:41 苍鼠 阅读(222) 评论(0) 推荐(0)
摘要:二.最小生成树算法(Prime以及Kruskal算法): 三.最长公共子序列: 如果写成递推公式,我们可以得到 dp[i]=max(dp[j](0<=j<i))+(a[i]>a[j]?1:0) 。 于是我们就能够得到O(n^2)的动态规划方法的实现: O(nlogn)的动态规划+二分方法 在前一种方 阅读全文
posted @ 2018-07-17 20:59 苍鼠 阅读(240) 评论(0) 推荐(0)