趙艷敏高級講師
從事設(shè)計行業(yè)多年,有著豐富的設(shè)計和動畫制作經(jīng)驗。曾參與中國電信天翼
手機網(wǎng)及天翼手機DIY等多個項目的設(shè)計,動畫,及As開發(fā)。項目經(jīng)驗豐富。曾在卡酷動畫衛(wèi)視下屬公司擔(dān)任高級動畫師一職,參與多部動畫片的制作
。對動畫也有較高的造詣。
精通Flash、After Effects、Photoshop、Illustrator、ActionScript
2.0/3.0、Edius、CoolEdit、Axure RP、DIV CSS等相關(guān)技術(shù)。
講課有自己的風(fēng)格,思維活躍,條理清晰講課注重細節(jié),由簡入繁。本著以
學(xué)生學(xué)會為目的,更注重理論與實踐相結(jié)合。
Java培訓(xùn)Java與自學(xué)Java的差距
培訓(xùn)Java與自學(xué)Java的差距
我以前也是自學(xué)Java,在一家公司跟著別人學(xué),以前是別人眼中的菜鳥,現(xiàn)
在是別人眼中的大神,Java很簡單的,貴在堅持和多練,沒必要花那培訓(xùn)錢。如果真的要去學(xué)的話,
選擇Java培訓(xùn)機構(gòu)要注意這兩點基本上就能避免一些坑:
1. 老師沒有正經(jīng)公司工作經(jīng)歷,或者沒有已經(jīng)在線上正常運轉(zhuǎn)的產(chǎn)品。一
些所謂培訓(xùn)班的老師水平往往比較一般,甚至還有培訓(xùn)出來后又接著培訓(xùn)別人的。
2、是不是會承諾幫你找到工作,要找到好的工作,不是靠別人給你保證的
,還是要靠自己提升能力。
建議多自己學(xué)習(xí)加上找些好的代碼主動學(xué)習(xí)。例如github,多練習(xí)網(wǎng)上很多
網(wǎng)站里真正好的代碼。作為Java工程師,可以多看看spring文檔,看看很多已經(jīng)成熟的框架,深入去體會。另外,學(xué)軟件等等**好還是自己多學(xué),找點
視頻教程之類,也省點錢。
流行框架
-
01Struts2
-
02Hibernate
-
03Spring
-
04SpringMVC
-
05MyBatis
-
1.MyBatis配置&查詢數(shù)據(jù)
-
2.MyBatis全局配置文件
-
3.MyBatis映射文件
-
4.關(guān)聯(lián)查詢,動態(tài)sql
-
5.MyBatis緩存機制&整合ehcache
-
6.MyBatis逆向工程
-
7.MyBatis、Spring、SpringMVC整合
-
8.MyBatis運行原理&源碼分析
-
9.MyBatis攔截器&插件開發(fā)
-
10.分頁插件&存儲過程調(diào)用&自定義
TypeHandler
-
06JPA
-
1.JPA技術(shù)體系
-
2.JPA注解
-
3.JPA相關(guān)API
-
4.JPA映射
-
5.JPQL
-
6.二級緩存
-
7.Spring整合JPA
-
07SpringData
-
1.SpringData快速入門
-
2.SpringData_Repository接口
-
3.Repository查詢規(guī)范
-
4.@Query&@Modifying
-
5.CrudRepository
-
6.PagingAndSortingRepository
-
7.JpaRepository
-
8.JpaSpecificationExecutor
-
9.自定義Repository
-
08Maven
-
1.Maven環(huán)境搭建
-
2.Maven構(gòu)建&自動化構(gòu)建
-
3.本地倉庫&中央倉庫
-
4.maven創(chuàng)建web工程
-
5.pom.xml、依賴管理
-
6.坐標(biāo)、依賴、生命周期等
-
7.eclipse下的maven使用
-
8.繼承&聚合
-
9.maven構(gòu)建SSH/SSM應(yīng)用
-
10.自動部署&持續(xù)集成&持續(xù)部署
-
09SVN
-
1.SVN簡介
-
2.SVN服務(wù)器搭建
-
3.SVN創(chuàng)建版本庫
-
4.Eclipse整合svn插件
-
5.使用SVN更新提交
-
6.SVN倉庫分析
-
7.SVN協(xié)同修改&沖突解決
-
8.SVN權(quán)限管理
-
9.SVN時光機
-
10.TortoiseSVN
-
10Shiro
-
1.Shiro入門
-
2.Spring集成Shiro
-
3.Shiro工作流程
-
4.權(quán)限URL配置
-
5.認證流程&認證Realm
-
6.密碼比對,MD5&鹽值加密
-
7.授權(quán)流程
-
8.標(biāo)簽&權(quán)限注解
-
9.會話管理、SessionDao
-
10.緩存
-
11.實現(xiàn)”記住我”
-
11Activiti5
-
12WebService
-
1.WebService簡介
-
2.WebService主流框架
-
3.cxf的使用
-
4.SOAP協(xié)議
-
5.WSDL講解
-
6.JAX-WS
-
7.與Spring整合
-
8.JAXB
-
9.JAX-RS
-
10.支付接口原理
-
13Linux
-
14Redis
-
1.NoSQL&Redis入門
-
2.Redis/memcache/MongDB對比
-
3.Redis安裝&啟動
-
4.分布式數(shù)據(jù)庫CAP原理
-
5.Redis五大數(shù)據(jù)類型和基本操作命令
-
6.Redis總體配置Redis.conf
-
7.Redis持久化(RDB和AOF)
-
8.Redis事務(wù)控制
-
9.Redis發(fā)布和訂閱
-
10.Redis(Master/Slave)主從復(fù)制
-
11.Jedis
-
15Git&Git Hub
-
1.Git安裝配置
-
2.Git本地庫搭建
-
3.Git常用操作命令
-
4.Github注冊與配置
-
5.Github與Git協(xié)同辦公
-
6.TortoiseGit安裝配置
-
7.Egit操作push/pull,
-
8.Git工作流
-
9.集中式&GitFlow&Forking
-
16MySQL高級
-
17JVM原理
-
1.JVM簡析
-
2.JVM組成結(jié)構(gòu)
-
3.JVM堆、棧原理
-
4.JVM-Heap三區(qū)原理
-
5.JVM垃圾收集機制
-
6.堆內(nèi)存調(diào)優(yōu)
-
7.GC回收策略
-
8.GC三大算法
-
18Quartz
-
19Nginx
-
1.Nginx反向代理介紹
-
2.Nginx **和安裝
-
3.Nginx 編譯和啟動、訪問
-
4.在Linux下搭建Nginx集群
-
5.在Windows搭建Nginx集群
-
6.解決Session共享問題
-
20Java JUC 線程高級
算法7:設(shè)計一個class,類似于stack, 但可以是O(1)時間內(nèi)返回min()
>
解題思路
類中存一個數(shù)據(jù)棧和一個輔助棧,向數(shù)據(jù)棧push的時候,判斷當(dāng)前值與輔助棧棧頂?shù)闹档拇笮?,如果小則push到輔助棧,否則push輔助棧的棧頂數(shù)值到輔助棧;向數(shù)據(jù)棧pop時,同時pop輔助棧的值。獲取當(dāng)前數(shù)值**小值即輔助棧棧頂數(shù)據(jù),時間復(fù)雜度為O(1)
MinStack類定義
#include <stack>
using namespace std;
class MinStack
{
public:
MinStack();
~MinStack();
//棧的push操作
void Push(int value);
//棧的pop操作
int Pop();
//獲取**小值操作
int Min();
//判斷棧是否為空
bool IsEmpty();
PRivate:
stack<int> dataStack;
stack<int> minStack;
};
MinStack類實現(xiàn)
#include "stdafx.h"
#include "MinStack.h"
#include <iostream>
using namespace std;
MinStack::MinStack()
{
}
MinStack::~MinStack()
{
}
void MinStack::Push(int data)
{
dataStack.push(data);
//向minStack push當(dāng)前**小值
if(minStack.empty() || data < minStack.top())
{
minStack.push(data);
}
else
{
minStack.push(minStack.top());
}
}
int MinStack::Pop()
{
if(IsEmpty())
{
cout<<"stack is empty,can t pop"<<endl;
return -1;
}
//獲取棧頂數(shù)據(jù)
int data = dataStack.top();
dataStack.pop();
minStack.pop();
return data;
}
bool MinStack::IsEmpty()
{
if(dataStack.empty())
{
return true;
}
return false;
}
int MinStack::Min()
{
if(minStack.empty())
{
cout<<"min stack is empty"<<endl;
return -1;
}
return minStack.top();
}
測試代碼
#include "stdafx.h"
#include "MinStack.h"
#include <iostream>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
cout<<"please input minStack"<<endl;
MinStack minStack;
int data = 0;
for(int i = 0; i < 8; i )
{
cin>>data;
minStack.Push(data);
cout<<"min data is "<<minStack.Min()<<endl;
}
minStack.Pop();
cout<<"after pop one data, the min data is "<<minStack.Min()<<endl;
minStack.Pop();
cout<<"after pop one data, the min data is "<<minStack.Min()<<endl;
minStack.Pop();
cout<<"after pop one data, the min data is "<<minStack.Min()<<endl;
return 0;
}
相關(guān)推薦:
蘇州JAVA培訓(xùn) 蘇州JAVA培訓(xùn)班 蘇州JAVA培訓(xùn)機構(gòu)