kongkong
首页
归档
分类
标签
关于
设计模式——工厂模式
* 除了单例模式和观察者监听者模式,本篇再介绍一下工厂模式。。。→_→ * 面向对象编程中出现的问题 在面向对象编程中,可能会会由一种父类派生出许许多多的子类。而当我们在使用new实例化一个子类对象之前,也可能需要进行很多提前操作,比如调用其他的方法、获取相应的参数列表的值、在数据库中查询相关信息等 当类型越来越多、名字越来越复杂的时候,每次去实例化一个子类对象时,都要进行很多提前操作,这就
2020-07-01
Design Patterns
设计模式
剑指Offer——(37)数字在排序数组中出现的次数
题目描述: 统计一个数字在排序数组中出现的次数。 实现如下: 方法一 //利用count计数,时间复杂度O(n) class Solution { public: int GetNumberOfK(vector<int> data, int k) { return count(data.begin(), data.end(), k); }
2020-07-01
Data Structures and Algorithms
剑指Offer
剑指Offer——(36)两个链表的第一个公共结点
题目描述: 输入两个链表,找出它们的第一个公共结点。 实现如下: //节点结构体定义 struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) {} }; 方法一 //利用两个栈,从头开始遍历两个链表,将其节点的地址分别存入两个栈
2020-07-01
Data Structures and Algorithms
剑指Offer
剑指Offer——(35)数组中的逆序对
题目描述: 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。即输出P%1000000007 输入描述: 题目保证输入的数组中没有的相同的数字 数据范围: 对于%50的数据,size<=10^4对于%75的数据,size<=10^5对于%100的数据,siz
2020-07-01
Data Structures and Algorithms
剑指Offer
剑指Offer——(34)第一个只出现一次的字符位置
题目描述: 在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置 实现如下: //在线测试用例非常的坑。。。→_→ //1.需要返回的是下标 //2.测试用例中区分大小写 //将所有的字符元素存放到<key, value>中,字符元素值为key,自定义结构体indexAndTime为value //indexAndT
2020-07-01
Data Structures and Algorithms
剑指Offer
第一次技术面试
* 一上来没有自我介绍。。直接就开始了。。套路不对啊。。→_→ * 问会哪些语言,JAVA、python、脚本语言会不会?(尴尬。。都只是了解) 说一下TCP的三次握手和四次挥手?(就开始说每一步的流程和状态变化,顺便再说几句三次握手和四次挥手的原因) 简单说一下TCP和UDP的区别和特点(可能是我第一个问题说的时间太长了。。。还特别强调了“简单”。。,) 说一下指针和引用的区别(自己也带
2020-06-30
Life
面试总结
剑指Offer——(33)丑数
题目描述: 把只包含因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。 实现如下: //不用每一个数字都进行判断 //而将丑数进行有序的排列,存储到set中 //根据定义,丑数乘以2或3或5后,还是丑数 //所以初始化第一个丑数1 //由三种倍数关系计算出第一个大于当前最大丑
2020-06-30
Data Structures and Algorithms
剑指Offer
【转】What really happens when you navigate to a URL
本文将深入理解当你输入一个网址的时候,后台到底发生了什么事。。。→_→ 原文传送门:What really happens when you navigate to a URL 首先,在浏览器中输入网址: 浏览器查找域名的IP地址 DNS查找过程如下: 浏览器缓存 – 浏览器会缓存DNS记录一段时间。 有趣的是,操作系统没有告诉浏览器储存DNS记录的时间,这样不同浏览器会储存个自固
2020-06-30
Linux
Network
设计模式——观察者监听者模式
** *本篇总结一下基于多线程的线程安全的观察者监听者模式。。。→_→ ** 在阅读本文之前,需要先了解相关知识。。请戳传送门——智能指针的交叉引用问题及解决方法 #include <iostream> #include <string> #include <memory> #include <map> #include <vector>
2020-06-30
Design Patterns
设计模式
智能指针的交叉引用问题及解决方法
* 本篇讨论一下因为智能指针的交叉引用造成的内存泄漏问题和解决方法。。。→_→ * 讨论这个问题之前,先来看一段简单的代码 #include <iostream> #include <memory> using namespace std; class B; class A { public: shared_ptr<B> _bptr; }
2020-06-30
Language
C++
1
…
3
4
5
6
7
…
12
搜索
×
关键词