采用CloudFlare进行飞牛NAS的远程访问【安全免费】无需公网IP、端口号,NAS外网访问新方法_网络存储_什么值得买sudomkdir-p/etc/dockersudotee/etc/docker/daemon.json<
“C语言与揭秘文件:从内存到外部存储的旅程“
咔哆TryBid
c语言
1️⃣文件概述1.文件是一组相关数据的有序集合。如,源程序文件、目标文件、可执行文件、库文件(头文件)...。文件通常驻留在外部介质(磁盘、硬盘、U盘...)上的,在使用时才调入内存。2.程序在执行时,所有的数据都存储在内存中,这些数据只能临时存放而不能永久保存,想要永久保存就需要把数据以文件的形式存储在外存储器中。每一个文件都有一个名字,操作系统以文件为单位对数据进行管理。3.C语言把外部设备也
【C语言算法刷题】第9题
花生_TL00007
C语言算法刷题算法c语言数据结构
题目描述给定一个非空字符串S,其被N个‘-’分隔成N+1的子串,给定正整数K,要求除第一个子串外,其余的子串每K个字符组成新的子串,并用‘-’分隔。对于新组成的每一个子串,如果它含有的小写字母比大写字母多,则将这个子串的所有大写字母转换为小写字母;反之,如果它含有的大写字母比小写字母多,则将这个子串的所有小写字母转换为大写字母;大小写字母的数量相等时,不做转换。输入输出描述输入两行:第一行为参数K
【C语言算法刷题】第10题
花生_TL00007
C语言算法刷题c语言算法开发语言
题目描述主管期望你来实现英文输入法单词联想功能。需求如下:依据用户输入的单词前缀,从已输入的英文语句中联想出用户想输入的单词,按字典序输出联想到的单词序列,如果联想不到,请输出用户输入的单词前缀。注意:英文单词联想时,区分大小写缩略形式如”don’t”,判定为两个单词,”don”和”t”输出的单词序列,不能有重复单词,且只能是英文单词,不能有标点符号输入描述输入为两行。首行输入一段由英文单词wor
【数据结构基础C++】图论04-深度优先遍历,图的连通分量个数
新时代&农民
数据结构C++图论深度优先数据结构
单独写一个连通分量的类代码#pragmaonce#includeusingnamespacestd;templateclasscomponent{private:Graph&G;bool*visited;intccount;int*connected;//将深度优先遍历写在私有里voiddfs(intv){visited[v]=true;//记录该点被访问connected[v]=ccount;/
React Fiber 架构详解
JimmyHeat
前端框架
ReactFiber架构详解ReactFiber是React16引入的新架构,它重新实现了React的协调算法,使得React能更高效地处理更新、渲染,提升了应用的性能和响应速度。Fiber的目标是优化UI更新流程,尤其是在大型应用中保证流畅的用户体验。1.什么是ReactFiber?ReactFiber是React核心算法的重写。它是一种增量渲染的机制,允许React将更新工作分成多个小任务,并
DP优化专题
pytKonnyaku
算法动态规划
文章目录倍增优化DP[NOIP2012提高组]开车旅行题目描述输入格式输出格式数据结构优化DP清理班次2赤壁之战估算单调队列优化DP[SCOI2010]股票交易题目描述裁剪序列单调队列优化多重背包斜率优化DPⅠ状态转移方程Ⅱ决策点关系Ⅲ凸壳Ⅳ维护答案Ⅴ特殊性Ⅵ模板CodeⅦ注意事项K匿名序列四边形不等式优化DP定义:定理:一维线性DP的四边形不等式优化决策单调性定理二维四边形不等式优化DP决策单调
怎么实现Redis的高可用?
java1234_小锋
javaredis数据库缓存
大家好,我是锋哥。今天分享关于【请介绍一些常用的Java负载均衡算法,以实现高并发和高可用性?】面试题。希望对大家有帮助;怎么实现Redis的高可用?1000道互联网大厂Java工程师精选面试题-Java资源分享网要实现Redis的高可用性,通常有以下几种常见的方案。每种方案都能确保Redis在面对故障时仍能持续提供服务。以下是实现Redis高可用的几种常见方法:1.RedisSentinelRe
8622 哈希查找
软工在逃男大学生
SCAU_OJ_DS哈希算法算法数据结构c语言c++
SCAU数据结构OJ第五章文章目录8622哈希查找8622哈希查找Description使用哈希函数:H(k)=3*kMODlength,并采用开放定址法处理冲突。试对输入的关键字序列构造哈希表,哈希表长度为length,求等概率情况下查找成功的平均查找长度,并设计构造哈希表的完整的算法。本题给出部分代码,请补全Hash函数和解决冲突的collison函数。输入格式第一行:输入哈希表的长度;第二行
开放传神(OpenCSG)手撕Sora的Diffusion Transformer (DiT)算法
OpenCSG
transformer算法深度学习人工智能stablediffusion
“Sora的出现不是偶然,而是经过长期积累、反复试错及用户反馈的必然。”OpenAI尝试过递归网络、生成对抗网络、自回归Transformer及扩散模型。最终诞生了DiffusionTransformer。其充分利用了大语言模型Token的好处,让像素也能够被预测(Patches)。Sora的诞生不亚于2023年ChatGPT的出现,因为我们的世界是一个五彩斑斓的图像和视频组成。Sora通过社区和
树的存储结构&树和森林的遍历
于冬恋
java算法数据结构
树的存储结构(1)双亲表示法(顺序存储)每个结点中保存指向双亲的“指针”#definemaxsize100//树中最多结点数typedefstruct{//树中结点定义intdata;//数据元素intparent;//双亲位置域}ptnode;typedefstruct{//数的类型定义ptnodenodes[maxsize];//双亲表示intn;//结点数}ptree;增加新元素只需保存该结
{每日一道算法题}
zzh666ya
算法算法javapythonc++c语言
423.从英文中重建数字难度中等题目描述:给你一个字符串s,其中包含字母顺序打乱的用英文单词表示的若干数字(0-9)。按升序返回原始的数字提示:1<=s.length<=105s[i]为["e","g","f","i","h","o","n","s","r","u","t","w","v","x","z"]这些字符之一示例1:输入:s="owoztneoer"输出:"012"示例2:输入:s="f
C语言实现Berlekamp-Massey算法
belle-de-jour
密码分析算法c语言抽象代数密码学信息与通信线性代数
Berlekamp-Massey算法是一种广泛应用于纠错编码中的迭代算法,我们在许多纠错编码中都能看见它的用途。BM算法最初是为了解决线性递推序列的问题而提出的,后来被广泛应用于纠错编码中,特别是用于解码如RS码(Reed-Solomon码)和BCH码等循环纠错码。这些编码方案在数据传输和存储系统中扮演着重要角色,能够纠正多个错误并检测潜在的错误,从而确保数据的完整性和可靠性。BM算法基本原理BM
每日一道算法题 移除元素
BraveOxCow
算法题算法数据结构
题目27.移除元素-力扣(LeetCode)PythonclassSolution:defremoveElement(self,nums:List[int],val:int)->int:whilevalinnums:fornuminnums:ifnum==val:nums.remove(num)breakreturnlen(nums)classSolution:defremoveElement(s
每日一道算法题 成绩排序
BraveOxCow
算法python开发语言
题目成绩排序_牛客题霸_牛客网(nowcoder.com)Pythonn=int(input())flag=int(input())ans=[]for_inrange(n):name,score=input().split('')ans.append([name,int(score)])ans.sort(key=lambdax:x[1],reverse=notflag)foreinans:prin
每日一道算法题 组合
BraveOxCow
算法题算法数据结构
题目77.组合-力扣(LeetCode)Python体会一下Python的高开发效率classSolution:defcombine(self,n:int,k:int)->List[List[int]]:fromitertoolsimportcombinationsreturnlist(combinations(range(1,n+1),k))第二种解法如下:classSolution:defco
数论(三)——约数(约数个数,约数和,公约数)
DearLife丶
#数学知识算法gcd约数欧几里德算法
目录试除法求约数求约数个数约数之和欧几里得算法试除法求约数试除法求一个数的所有约数,思路与判断质数的思路一样,优化的方法也是一样的,这里就不再赘述,没有看过我之前关于质数的博客可以点这里。从小到大枚举所有约数,但是我们只需要枚举每一对儿中较小的一个就可以了。时间复杂度:O(sqrt(n))vectorget_divisors(intn){vectorres;//vector数组存储一个数的所有约数
基于粒子群算法的电力系统无功优化研究(IEEE14节点)(Matlab代码实现)
科研_G.E.M.
算法matlab开发语言
欢迎来到本博客❤️❤️博主优势:博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。⛳️座右铭:行百里者,半于九十。本文目录如下:目录⛳️赠与读者1概述一、引言二、粒子群算法简介三、无功优化数学模型四、IEEE14节点系统简介五、基于粒子群算法的无功优化实现六、仿真结果与分析七、结论与展望2运行结果3参考文献4Matlab代码实现⛳️赠与读者做科研,涉及到一个深在的思想系统,需要科研者逻辑缜密,踏
每日一道算法题-零钱兑换
qq_43191817
大数据
给你一个整数数组coins,表示不同面额的硬币;以及一个整数amount,表示总金额。计算并返回可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回-1。你可以认为每种硬币的数量是无限的。示例1:输入:coins=[1,2,5],amount=11输出:3解释:11=5+5+1示例2:输入:coins=[2],amount=3输出:-1示例3:输入:coins=[1],a
C++———STL容器个人理解(vector、queue、stack)
Aitee
C++学习笔记c++学习笔记
文章目录什么是容器vector代码讲解及实现声明操作sizeemptyclear迭代器frontbackpush_backpop_backbegin/end代码测试queue代码实现及讲解循环队列queue声明pushpopfrontback初始化结构体定义优先队列priority_queuepushpoptop测试结果stack声明push/back代码实现及讲解什么是容器在数据存储上,有一种对
【数据库初阶】表的查询语句和聚合函数
有趣的中国人
数据库初阶数据库聚合函数增删改查
博主首页:有趣的中国人专栏首页:数据库初阶其它专栏:C++初阶|C++进阶|初阶数据结构亲爱的小伙伴们,大家好!在这篇文章中,我们将深入浅出地为大家讲解表的查询语句和聚合函数帮助您轻松入门,快速掌握核心概念。如果文章对您有所启发或帮助,请别忘了点赞、收藏、留言支持!您的每一份鼓励,都是我持续创作的源动力。让我们携手前行,共同进步!文章目录@[toc]1.SELECT基本用法1.1基础语法1.
360大数据面试题及参考答案
大模型大数据攻城狮
大数据数据治理jvm内存CAS数据开发指标开发数据分析
数据清理有哪些方法?数据清理是指发现并纠正数据文件中可识别的错误,包括检查数据一致性,处理无效值和缺失值等。常见的数据清理方法有以下几种:去重处理:数据中可能存在重复的记录,这不仅会占用存储空间,还可能影响分析结果。通过对比每条记录的关键属性,若所有关键属性值都相同,则判定为重复记录,可保留其中一条,删除其余重复项。例如在客户信息表中,若有两条记录客户姓名、联系方式、地址等关键信息都一样,就可进行
广度优先搜索(BFS)算法解决迷宫最短路径问题
CDSNT
宽度优先算法c++
问题描述:①迷宫由n行m列的单元格组成(n,m都小于等于50)②每个单元格要么是空地,要么是障碍物现请你找到一条从起点到终点的最短路径,输出最短路径及其长度,若不存在,则输出“NoAnswer.”。输入迷宫大小(n行m列):5411011111110110111110输入起点的坐标:00输入终点的坐标:32输出:最短路径长度为7最短路径:(0,0)(1,0)(2,0)(3,0)(4,0)(4,1)
【数据结构】 并查集 + 路径压缩与按秩合并 python
查理零世
数据结构python算法
目录前言模板朴素实现路径压缩按秩合并按树高为秩按节点数为秩总结前言并查集的基本实现通常使用森林来表示不同的集合,每个集合用一棵树表示,树的每个节点有一个指向其父节点的指针。如果一个节点是它自己的父节点,那么它就是该集合的代表(称为根节点)。模板P3367【模板】并查集https://www.luogu.com.cn/problem/P3367题目描述如题,现在有一个并查集,你需要完成合并和查询操作
使用Python爬虫抓取与分析航班信息:从数据采集到应用的完整实践
Python爬虫项目
2025年爬虫实战项目pythonselenium自动化爬虫开发语言phpmicrosoft
目录:前言爬虫基础知识什么是爬虫?爬虫的工作原理爬虫的应用领域航班数据爬取的实际应用航班数据分析的重要性选择爬虫技术栈常见的爬虫框架与工具选择合适的工具:requestsvsSeleniumvsScrapy如何获取航班信息航班数据来源分析航班信息的结构与抓取目标爬虫抓取航班信息的步骤发送HTTP请求并获取航班数据使用Selenium抓取动态数据解析HTML页面并提取航班信息航班数据存储与处理存储抓
使用Python Selenium抓取表单数据:从数据提取到自动化处理的完整指南
Python爬虫项目
2025年爬虫实战项目pythonselenium自动化爬虫开发语言phpmicrosoft
目录:前言爬虫基础知识什么是爬虫爬虫的工作原理Selenium简介什么是SeleniumSelenium的工作原理表单数据抓取概述什么是表单数据常见的表单类型表单抓取的实际应用场景爬虫技术栈requestsvsSeleniumSelenium的安装与配置使用Selenium抓取表单数据的步骤启动浏览器并访问目标页面查找表单元素提交表单并抓取返回的数据数据存储与处理存储抓取的数据:CSV、数据库等数
基础项目实战——学生管理系统(c++)
曙曙学编程
基础项目实战c++windows开发语言
目录前言一、功能菜单界面二、类与结构体的实现三、录入学生信息四、删除学生信息五、更改学生信息六、查找学生信息七、统计学生人数八、保存学生信息九、读取学生信息十、打印所有学生信息十一、退出系统十二、文件拆分结语前言这一期我们来一起学习我们在大学做过的课程设计——学生管理系统,这是一个非常简单且非常值得像我这样的新手独立完成的一个基础项目,用到基础数据结构里的链表来实现,所以指针和链表不太理解的同学先
ASM系列六 利用TreeApi 添加和移除类成员
lijingyao8206
jvm动态代理ASM字节码技术TreeAPI
同生成的做法一样,添加和移除类成员只要去修改fields和methods中的元素即可。这里我们拿一个简单的类做例子,下面这个Task类,我们来移除isNeedRemove方法,并且添加一个int 类型的addedField属性。
package asm.core;
/**
* Created by yunshen.ljy on 2015/6/
Springmvc-权限设计
bee1314
springWebjsp
万丈高楼平地起。
权限管理对于管理系统而言已经是标配中的标配了吧,对于我等俗人更是不能免俗。同时就目前的项目状况而言,我们还不需要那么高大上的开源的解决方案,如Spring Security,Shiro。小伙伴一致决定我们还是从基本的功能迭代起来吧。
目标:
1.实现权限的管理(CRUD)
2.实现部门管理 (CRUD)
3.实现人员的管理 (CRUD)
4.实现部门和权限
算法竞赛入门经典(第二版)第2章习题
CrazyMizzz
c算法
2.4.1 输出技巧
#include <stdio.h>
int
main()
{
int i, n;
scanf("%d", &n);
for (i = 1; i <= n; i++)
printf("%d\n", i);
return 0;
}
习题2-2 水仙花数(daffodil
struts2中jsp自动跳转到Action
麦田的设计者
jspwebxmlstruts2自动跳转
1、在struts2的开发中,经常需要用户点击网页后就直接跳转到一个Action,执行Action里面的方法,利用mvc分层思想执行相应操作在界面上得到动态数据。毕竟用户不可能在地址栏里输入一个Action(不是专业人士)
2、<jsp:forward page="xxx.action" /> ,这个标签可以实现跳转,page的路径是相对地址,不同与jsp和j
php 操作webservice实例
IT独行者
PHPwebservice
首先大家要简单了解了何谓webservice,接下来就做两个非常简单的例子,webservice还是逃不开server端与client端。我测试的环境为:apache2.2.11 php5.2.10做这个测试之前,要确认你的php配置文件中已经将soap扩展打开,即extension=php_soap.dll;
OK 现在我们来体验webservice
//server端 serve
Windows下使用Vagrant安装linux系统
_wy_
windowsvagrant
准备工作:
下载安装 VirtualBox :https://www.virtualbox.org/
下载安装 Vagrant :http://www.vagrantup.com/
下载需要使用的 box :
官方提供的范例:http://files.vagrantup.com/precise32.box
还可以在 http://www.vagrantbox.es/
更改linux的文件拥有者及用户组(chown和chgrp)
无量
clinuxchgrpchown
本文(转)
http://blog.163.com/yanenshun@126/blog/static/128388169201203011157308/
http://ydlmlh.iteye.com/blog/1435157
一、基本使用:
使用chown命令可以修改文件或目录所属的用户:
命令
linux下抓包工具
矮蛋蛋
linux
原文地址:
http://blog.chinaunix.net/uid-23670869-id-2610683.html
tcpdump -nn -vv -X udp port 8888
上面命令是抓取udp包、端口为8888
netstat -tln 命令是用来查看linux的端口使用情况
13 . 列出所有的网络连接
lsof -i
14. 列出所有tcp 网络连接信息
l
我觉得mybatis是垃圾!:“每一个用mybatis的男纸,你伤不起”
alafqq
mybatis
最近看了
每一个用mybatis的男纸,你伤不起
原文地址 :http://www.iteye.com/topic/1073938
发表一下个人看法。欢迎大神拍砖;
个人一直使用的是Ibatis框架,公司对其进行过小小的改良;
最近换了公司,要使用新的框架。听说mybatis不错;就对其进行了部分的研究;
发现多了一个mapper层;个人感觉就是个dao;
解决java数据交换之谜
百合不是茶
数据交换
交换两个数字的方法有以下三种 ,其中第一种最常用
/*
输出最小的一个数
*/
public class jiaohuan1 {
public static void main(String[] args) {
int a =4;
int b = 3;
if(a<b){
// 第一种交换方式
int tmep =
渐变显示
bijian1013
JavaScript
<style type="text/css">
#wxf {
FILTER: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#ffffff, EndColorStr=#97FF98);
height: 25px;
}
</style>
探索JUnit4扩展:断言语法assertThat
bijian1013
java单元测试assertThat
一.概述
JUnit 设计的目的就是有效地抓住编程人员写代码的意图,然后快速检查他们的代码是否与他们的意图相匹配。 JUnit 发展至今,版本不停的翻新,但是所有版本都一致致力于解决一个问题,那就是如何发现编程人员的代码意图,并且如何使得编程人员更加容易地表达他们的代码意图。JUnit 4.4 也是为了如何能够
【Gson三】Gson解析{"data":{"IM":["MSN","QQ","Gtalk"]}}
bit1129
gson
如何把如下简单的JSON字符串反序列化为Java的POJO对象?
{"data":{"IM":["MSN","QQ","Gtalk"]}}
下面的POJO类Model无法完成正确的解析:
import com.google.gson.Gson;
【Kafka九】Kafka High Level API vs. Low Level API
bit1129
kafka
1. Kafka提供了两种Consumer API
High Level Consumer API
Low Level Consumer API(Kafka诡异的称之为Simple Consumer API,实际上非常复杂)
在选用哪种Consumer API时,首先要弄清楚这两种API的工作原理,能做什么不能做什么,能做的话怎么做的以及用的时候,有哪些可能的问题
在nginx中集成lua脚本:添加自定义Http头,封IP等
ronin47
nginx lua
Lua是一个可以嵌入到Nginx配置文件中的动态脚本语言,从而可以在Nginx请求处理的任何阶段执行各种Lua代码。刚开始我们只是用Lua 把请求路由到后端服务器,但是它对我们架构的作用超出了我们的预期。下面就讲讲我们所做的工作。 强制搜索引擎只索引mixlr.com
Google把子域名当作完全独立的网站,我们不希望爬虫抓取子域名的页面,降低我们的Page rank。
location /{
java-归并排序
bylijinnan
java
import java.util.Arrays;
public class MergeSort {
public static void main(String[] args) {
int[] a={20,1,3,8,5,9,4,25};
mergeSort(a,0,a.length-1);
System.out.println(Arrays.to
Netty源码学习-CompositeChannelBuffer
bylijinnan
javanetty
CompositeChannelBuffer体现了Netty的“Transparent Zero Copy”
查看API(
http://docs.jboss.org/netty/3.2/api/org/jboss/netty/buffer/package-summary.html#package_description)
可以看到,所谓“Transparent Zero Copy”是通
Android中给Activity添加返回键
hotsunshine
Activity
// this need android:minSdkVersion="11"
getActionBar().setDisplayHomeAsUpEnabled(true);
@Override
public boolean onOptionsItemSelected(MenuItem item) {
静态页面传参
ctrain
静态
$(document).ready(function () {
var request = {
QueryString :
function (val) {
var uri = window.location.search;
var re = new RegExp("" + val + "=([^&?]*)", &
Windows中查找某个目录下的所有文件中包含某个字符串的命令
daizj
windows查找某个目录下的所有文件包含某个字符串
findstr可以完成这个工作。
[html]
view plain
copy
>findstr /s /i "string" *.*
上面的命令表示,当前目录以及当前目录的所有子目录下的所有文件中查找"string&qu
改善程序代码质量的一些技巧
dcj3sjt126com
编程PHP重构
有很多理由都能说明为什么我们应该写出清晰、可读性好的程序。最重要的一点,程序你只写一次,但以后会无数次的阅读。当你第二天回头来看你的代码 时,你就要开始阅读它了。当你把代码拿给其他人看时,他必须阅读你的代码。因此,在编写时多花一点时间,你会在阅读它时节省大量的时间。让我们看一些基本的编程技巧: 尽量保持方法简短 尽管很多人都遵
SharedPreferences对数据的存储
dcj3sjt126com
SharedPreferences简介: &nbs
linux复习笔记之bash shell (2) bash基础
eksliang
bashbash shell
转载请出自出处:
http://eksliang.iteye.com/blog/2104329
1.影响显示结果的语系变量(locale)
1.1locale这个命令就是查看当前系统支持多少种语系,命令使用如下:
[root@localhost shell]# locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
Android零碎知识总结
gqdy365
android
1、CopyOnWriteArrayList add(E) 和remove(int index)都是对新的数组进行修改和新增。所以在多线程操作时不会出现java.util.ConcurrentModificationException错误。
所以最后得出结论:CopyOnWriteArrayList适合使用在读操作远远大于写操作的场景里,比如缓存。发生修改时候做copy,新老版本分离,保证读的高
HoverTree.Model.ArticleSelect类的作用
hvt
Web.netC#hovertreeasp.net
ArticleSelect类在命名空间HoverTree.Model中可以认为是文章查询条件类,用于存放查询文章时的条件,例如HvtId就是文章的id。HvtIsShow就是文章的显示属性,当为-1是,该条件不产生作用,当为0时,查询不公开显示的文章,当为1时查询公开显示的文章。HvtIsHome则为是否在首页显示。HoverTree系统源码完全开放,开发环境为Visual Studio 2013
PHP 判断是否使用代理 PHP Proxy Detector
天梯梦
proxy
1. php 类
I found this class looking for something else actually but I remembered I needed some while ago something similar and I never found one. I'm sure it will help a lot of developers who try to
apache的math库中的回归——regression(翻译)
lvdccyb
Mathapache
这个Math库,虽然不向weka那样专业的ML库,但是用户友好,易用。
多元线性回归,协方差和相关性(皮尔逊和斯皮尔曼),分布测试(假设检验,t,卡方,G),统计。
数学库中还包含,Cholesky,LU,SVD,QR,特征根分解,真不错。
基本覆盖了:线代,统计,矩阵,
最优化理论
曲线拟合
常微分方程
遗传算法(GA),
还有3维的运算。。。
基础数据结构和算法十三:Undirected Graphs (2)
sunwinner
Algorithm
Design pattern for graph processing.
Since we consider a large number of graph-processing algorithms, our initial design goal is to decouple our implementations from the graph representation
云计算平台最重要的五项技术
sumapp
云计算云平台智城云
云计算平台最重要的五项技术
1、云服务器
云服务器提供简单高效,处理能力可弹性伸缩的计算服务,支持国内领先的云计算技术和大规模分布存储技术,使您的系统更稳定、数据更安全、传输更快速、部署更灵活。
特性
机型丰富
通过高性能服务器虚拟化为云服务器,提供丰富配置类型虚拟机,极大简化数据存储、数据库搭建、web服务器搭建等工作;
仅需要几分钟,根据CP
《京东技术解密》有奖试读获奖名单公布
ITeye管理员
活动
ITeye携手博文视点举办的12月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。
12月试读活动回顾:
http://webmaster.iteye.com/blog/2164754
本次技术图书试读活动获奖名单及相应作品如下:
一等奖(两名)
Microhardest:http://microhardest.ite