当前位置:  互联网>综合
本页文章导读:
    ▪调整数组使奇数位元素为奇数,偶数为元素为偶数      本题为百度质量部面试题 2n个数,一半奇数,一半偶数,设计一个程序让奇数位上的数是奇数,偶数位上的是偶数,并计算程序的空间复杂度和时间复杂度   程序思想: 本题类似于调.........
    ▪Java 实现邮件发送      很多应用都会涉及到email,但自己架设email服务器的情况还是很少的。一般都是直接借用一些门户网站的邮件服务发邮件。 实现方式一般有如下3种方案:原始级别—自己直接写socket,处理通讯.........
    ▪导入flex项目提示未安装ASP.NET Development Server      最近一直维护一个项目,项目涉及到flex的内容,今天往fb导入flex项目的时候提示“未安装asp.net development server”。新手有点晕,只能上网找找答案! 功夫不负有心人,问题的原因是:我系统.........

[1]调整数组使奇数位元素为奇数,偶数为元素为偶数
    来源: 互联网  发布时间: 2013-10-26

本题为百度质量部面试题

2n个数,一半奇数,一半偶数,设计一个程序让奇数位上的数是奇数,偶数位上的是偶数,并计算程序的空间复杂度和时间复杂度

 

程序思想:

本题类似于调整数组使奇数位于数组前半部分,偶数位于数组后半部分。

设两个指针,一个初始化为ou=0,另一个初始化为ji=1,如果arr[ou]为偶数,ou+=2;如果arr[ji]为奇数,ji+=2;

如果ou<len && ji<len ,再判断如果偶数为为奇数并且奇数位为偶数,则交换元素。 

public class jiou {

	public static void main(String[] args) {
		int[] arr = { 0, 1, 3, 2, 2, 4, 4, 5, 5,7 };
		reorder(arr);
		for (int i = 0; i < arr.length; i++) {
			System.out.print(arr[i] + ",");
		}

	}

	public static void reorder(int[] arr) {
		if (arr == null) {
			System.out.println("the array is null");
			return;
		}
		int len = arr.length;
		int ou = 0;
		int ji = 1;
		while (ou < len && ji < len) {
			if (arr[ou] % 2 == 0) {
				ou = ou + 2;
			}
			if (arr[ji] % 2 == 1) {
				ji = ji + 2;
			}
			if (ou < len && ji < len) {//该条件的目的是先判断数组下标是否出界,如果不加该条件判断,程序可能会有数组下标越界错误
				if (arr[ou] % 2 == 1 && arr[ji] % 2 == 0) {
					int temp = arr[ou];
					arr[ou] = arr[ji];
					arr[ji] = temp;
				}
			}
		}
	}

}


 

程序结果

0,1,2,3,2,5,4,5,4,7,

 

作者:tanyujing 发表于2013-7-15 11:28:22 原文链接
阅读:14 评论:0 查看评论

    
[2]Java 实现邮件发送
    来源: 互联网  发布时间: 2013-10-26

很多应用都会涉及到email,但自己架设email服务器的情况还是很少的。一般都是直接借用一些门户网站的邮件服务发邮件。

实现方式一般有如下3种方案:原始级别—自己直接写socket,处理通讯协议; 简单级别—自行封装mail.jar的API; 开源封装级别—引入一些开源框架的封装,功能强大,却又简单易用。

下面粗略介绍一下以上三种方式的实现情况。

 

1.       原始级别

邮件格式 + SMTP协议 + 自己写socket

由于直接处理协议层面的数据,需要开发者熟悉协议(否则,起码也需要边开发,边对着rfc文档),以及面对一堆的数据封装,异常处理等细节。

其实好处也在于此。所有的细节都是对开发者开放的,你觉得有多好就多好。

SMTP协议:参考rfc5321

邮件格式:参考rfc2882

Socket代码

Socket client = new Socket (SMTPServerAddress, SMTPPort);

     // …. Socket read/ write 参考协议格式,处理通讯数据

 

 

2.       简单级别

引入mail.jar包

    Mail.java 包对通讯协议做了封装,但在具体应用层面,还是有不少邮件的细节需要用户处理。

   实现例子:

   //服务器信息

Properties props = new Properties();

      props.put("mail.smtp.host", _hostName);

      props.put("mail.smtp.auth", _needAuth.toString());

 

//验证

     Authenticator authenticator = null;

      if(_needAuth){

         authenticator = new Authenticator() {

            @Override

            public PasswordAuthentication getPasswordAuthentication() {

               returnnew PasswordAuthentication(_authUser, _authPwd);

            }

         };

      }

 

     //处理邮件信息

  Session session = Session.getInstance(props, authenticator);

       Message msg = new MimeMessage(session);

          if (isNeedNotification()) {

            msg.setHeader("Disposition-Notification-To", "1");

          }

         

          msg.setSentDate(new Date());

          if(_subject!=null){

             msg.setSubject( MimeUtility.encodeText(_subject, getEncoding(),"B"));

          }

   

          String authEmail = getAuthEmail(getAuthUser(), getHostName());

          msg.setFrom(new InternetAddress(authEmail, getPersonalName(), getEncoding()));

 

          msg.setRecipients(Message.RecipientType.TO, getInternetAddress(_toList));

   

          if(_ccList!=null){

             msg.setRecipients(Message.RecipientType.CC, getInternetAd

    
[3]导入flex项目提示未安装ASP.NET Development Server
    来源: 互联网  发布时间: 2013-10-26

最近一直维护一个项目,项目涉及到flex的内容,今天往fb导入flex项目的时候提示“未安装asp.net development server”。新手有点晕,只能上网找找答案!

功夫不负有心人,问题的原因是:我系统是64位的,在64位系统下.netFrameWork的Development server安装位置与fb调用的development server的默认位置不同引起的。

解决问题的方法如下:

找到路径:c:\Program Files(X86)\Common Files\microsoft shared\DevServer\10.0,并复制该路径下的WebDev.WebServer20.exe和WebDev.WebServer20.exe.config两个文件到c:\Windows\Microsoft.NET\Framework\v2.0.50727文件夹下并将文件名中的20去掉。

导入项目正常...

end

作者:ljgstudy 发表于2013-7-15 12:19:05 原文链接
阅读:22 评论:0 查看评论

    
最新技术文章:
▪用户及权限基础 2---- Linux权限    ▪用户及权限基础 3---- Linux扩展权限    ▪git 简明教程(1) --创建及提交
▪背包 代码    ▪json对象的封装与解析    ▪01背包,完全背包,多重背包 ,模板代码
▪apache安装详解    ▪HDU 4668 Finding string (解析字符串 + KMP)    ▪《TCP-IP详解 卷1:协议》学习笔记(二)
▪《TCP-IP详解 卷1:协议》学习笔记(持续更新...    ▪windows下使用swig    ▪gensim试用
▪Linux Shell脚本编程--nc命令使用详解    ▪solr对跨服务器表联合查询的配置    ▪递归和非递归实现链表反转
▪Linux磁盘及文件系统管理 1---- 磁盘基本概念    ▪Cholesky Decomposition    ▪HTTP协议学习
▪用C语言写CGI入门教程    ▪用hdfs存储海量的视频数据的设计思路    ▪java多线程下载的实现示例
▪【原创】eAccelerator 一个锁bug问题跟踪    ▪hadoop学习之ZooKeeper    ▪使用cuzysdk web API 实现购物导航类网站
▪二维数组中的最长递减子序列    ▪内嵌W5100的网络模块WIZ812MJ--数据手册    ▪xss 跨站脚本攻击
▪RobotFramework+Selenium2环境搭建与入门实例    ▪什么是API    ▪用PersonalRank实现基于图的推荐算法
▪Logtype    ▪关于端口号你知道多少!    ▪Linux基本操作 1-----命令行BASH的基本操作
▪CI8.7--硬币组合问题    ▪Ruby on Rails 学习(五)    ▪如何使用W5300实现ADSL连接(二)
▪不允许启动新事务,因为有其他线程正在该会...    ▪getting start with storm 翻译 第六章 part-3    ▪递归求排列和组合(无重复和有重复)
▪工具类之二:RegexpUtils    ▪Coding Interview 8.2    ▪Coding Interview 8.5
HTML教程 iis7站长之家
▪Softmax算法:逻辑回归的扩展    ▪最小生成树---Kruskal算法---挑战程序设计竞赛...    ▪J2EE struts2 登录验证
▪任意两点间的最短路径---floyd_warshall算法    ▪Sqoop实现关系型数据库到hive的数据传输    ▪FFMPEG采集摄像头数据并切片为iPhone的HTTP Stream...
▪Ubuntu 13.04 – Install Jetty 9    ▪TCP/IP笔记之多播与广播    ▪keytool+tomcat配置HTTPS双向证书认证
▪安装phantomjs    ▪Page Redirect Speed Test    ▪windows media player 中播放pls的方法
▪sre_constants.error: unbalanced parenthesis    ▪http headers    ▪Google MapReduce中文版
▪The TCP three-way handshake (connect)/four wave (closed)    ▪网站反爬虫    ▪Log4j实现对Java日志的配置全攻略
▪Bit Map解析    ▪Notepad 快捷键 大全    ▪Eclipse 快捷键技巧 + 重构
▪win7 打开防火墙端口    ▪Linux Shell脚本入门--awk命令详解    ▪Linux Shell脚本入门--Uniq命令
▪Linux(Android NDK)如何避免僵死进程    ▪http Content-Type一览表    ▪Redis实战之征服 Redis + Jedis + Spring (二)
▪Tomcat7.0.40 基于DataSourceRealm的和JDBCRealm的资源...    ▪利用SQOOP将ORACLE到HDFS    ▪django输出 hello world
▪python re    ▪unity3D与网页的交互    ▪内存共享基本演示
▪python join    ▪不再为无限级树结构烦恼,且看此篇    ▪python实现变参
▪打开文件数限制功能不断地制造问题    ▪Arduino Due, Maple and Teensy3.0 的 W5200性能测试    ▪Selenium实例----12306网站测试
▪基于协同过滤的推荐引擎    ▪C4.5决策树    ▪C#HTTP代理的实现之注册表实现
▪nosql和关系型数据库比较?    ▪如何快速比较这两个字符串是否相等?    ▪hdoj 1863 畅通工程 最小生成树---prime算法
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3