-
文件切割 java
2018-11-26 23:18:45package 文件切割; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.FilenameFilter; import java.io.IOException; public class 文件切割器 { public ...package 文件切割; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.FilenameFilter; import java.io.IOException; public class 文件切割器 { public static void main(String[] args) throws IOException {//不要随便运行。。。 //delet(); //spiltfilebynum(new File("d:\\dd.txt"), 3); //spiltfilebymemory(new File("d:\\dd.txt"),1024*12); } //输入文件和文件需要被切割的份数 按份数切 static void spiltfilebynum(File file,int n) throws IOException { String s=file.getParent();//获取文件路径,用于确定将来被切割的文件放置的路径 FileInputStream f=new FileInputStream(file);//确定输入流 int count=1; long b=file.length();//获取文件长度 int space =(int)b/n; //开辟数组 byte arr[]=new byte[space]; int len; while((len=f.read(arr))!=-1) { FileOutputStream fos=new FileOutputStream(new File(s,(count++)+".hahhh"));//确定输出流 fos.write(arr, 0, len); fos.close(); } f.close(); } //告诉我要切多大内存 按内存切 static void spiltfilebymemory(File file,int n) throws IOException { int count=1; String s=file.getParent(); FileInputStream f=new FileInputStream(file); byte arr[]=new byte[n]; int len; while((len=f.read(arr))!=-1) { FileOutputStream f2=new FileOutputStream(new File(s,(count++)+".asds")); f2.write(arr, 0, len); f2.close(); } f.close(); } static void delet(String s)//用于搞错了删除文件,创了2000多个文件2333 { FilenameFilter f=new FilenameFilter() { @Override public boolean accept(File dir, String name) { // TODO Auto-generated method stub return name.endsWith(s); } }; File file=new File("d:\\"); File arr[]=file.listFiles(); for (File file2 : arr) { if(file2.isDirectory()) {} else if(f.accept(file, file2.getName())) { file2.delete(); } } } }
-
平面切割 JAVA
2020-08-27 21:54:41import java.util.Scanner; public class Main { public static int find[]=new int[100001]; public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.hasNext()) { int x=...import java.util.Scanner;
public class Main
{
public static int find[]=new int[100001];
public static void main(String[] args)
{Scanner sc = new Scanner(System.in); while (sc.hasNext()) { int x=sc.nextInt(); while(x-->0) { int a=sc.nextInt(); System.out.println(a*2*a-a+1); } } }
}
-
钢管切割Java
2015-11-18 02:14:02 -
动态规划——钢条切割java
2019-04-06 10:15:35【问题】:给定一段长度为n英寸的钢条和一个价格表pi(i = 1,2,3…n)求切割方案使得销售受益rn最大。 例如 n = 4 切割方案以及对应的收益为: 【用自顶向下的递归】 //CUT-ROD(p,n) if n == 0 return 0 q =...【问题】:给定一段长度为n英寸的钢条和一个价格表pi(i = 1,2,3…n)求切割方案使得销售受益rn最大。
例如 n = 4
切割方案以及对应的收益为:
【用自顶向下的递归】//CUT-ROD(p,n) if n == 0 return 0 q = -无穷 for i = 1 to n q = max(q,p[i]+CUT-ROD(p,n-i)) return q;
【用动态规划的思想解决】
动态规划方法仔细安排就切顺序,对每个子问题只求解一次,并将结果保存下来,如果此后自此需要此问题的解,只需查找保存的结果,而 不必重新计算。动态规划有两种等价的实现方法:
方法一:带备忘的自顶向下法
此方法按自然的递归形式编写过程,但过程会保存每个子问题的解(保存在数组或散列表中)。当需要一个子问题的解时,过程首先检查是否已经保存过此解,是,返回值。MEMOIZED-CUT-ROD(p,n) let r[0..n] be a new array for i = 0 to n r[i] = -无穷 return MEMOIZED-CUT-ROD-AUX(p,n,r) MEMOIZED-CUT-ROD-AUX(p,n,r) if(r[n]>=0 return r[n] if n==0 q = 0 else q= -wuqiong for i = 1 to n q = max(q,p[i] + MEMOIZED-CUT-ROD-AUX(p,n-i,r) r[n] = q return q
方法二:自底向上法
需要恰当的定义子问题的“规模”,使得任何问题的求解都只依赖于“更小的"子问题的求解。按由小到大的顺序进行求解。//BOTTOM-UP-CUT-ROD(p,n) let r[0,1,2...n] be a new array r[0] = 0 for j = 1 to n q = -wuqiong for i = 1 to j q = max(q,p[i] + r[j-i] r[j] = q return r[n]
扩展版本:不仅保存最优收益值,还保存对应的切割方案
//EXTENDED-BOTTOM-UP-CUT-ROD(p,n) let r[0,1,2...n] and s[0...n0be a new array r[0] = 0 for j = 1 to n q = -wuqiong for i = 1 to j if q<p[i]+r[j-i] q = p[i]+r[j-i] s[j] = i r[j] = q return r and s
【java实现】
package 动态规划; public class 钢筋分割 { //递归方法 public static int cut_rod(int[] p,int n){ if (n==0){ return 0; } int q=-1; for (int i=1;i<=n;i++){ q=Math.max(q,p[i]+cut_rod(p,n-i)); } return q; } //带备忘的自顶向下 public static int memoizedCutRod(int[] p,int n){ int[] r = new int[n+1]; for (int i = 0;i < r.length;i++){ r[i] = -1; } return MEMOIZED_cut_rod_aux(p,n,r); } public static int MEMOIZED_cut_rod_aux(int[] p,int n,int[]r){ if(r[n] >= 0){ return r[n]; } int q = -1; if(n == 0) q = 0; else{ for(int i = 1;i<=n;i++){ q = Math.max(q,p[i]+MEMOIZED_cut_rod_aux(p,n-i,r)); } } r[n] = q; return q; } //使用自底向上 public static int bottomUpCutRod(int[] p,int n){ int[] r = new int[n+1]; for(int i = 0;i<r.length;i++){ r[i] = 0; } for(int j = 1;j <= n;j++){ int q = -1; for(int i = 1;i<=j;i++){ q = Math.max(q, p[i] + r[j-i]); } r[j] = q; } return r[n]; } public static void main(String[] args) { int[] p = {0,1,5,8,9,10,17,17,20,24,30}; int n = 4; int resultDigui = cut_rod(p,n); System.out.println("使用递归方法求得最优收益为"+resultDigui); int resultBeiwang = memoizedCutRod(p,n); System.out.println("使用带备忘方法求得最优收益为"+resultBeiwang); int resultZidiXiangshang = bottomUpCutRod(p,n); System.out.println("使用自底向上方法求得最优收益为"+resultZidiXiangshang); } }
运行结果:
-
Swift 字符串切割 java substring
2016-07-20 10:32:04swift 字符串实现java的substring(start:Int,_ end:Int)->String?方法. 获取切割的子字符串.extension String{ func substring(start:Int,_ end:Int)->String?{ if start|| start>=self.characters.count || ... -
第十届蓝桥杯C组 矩形切割 Java 代码
2019-12-10 10:10:15当他面对一块矩形材料时,他总是从中间切割一刀,切出一块最大的正方形,剩下一块矩形,然后再切割剩下的矩形材料,直到全部切为正方形为止。例如,对于一块两边分别为5和3的材料(记为5×3),小明会依次切出3×3、... -
java wav 切割_java切割音频文件
2021-02-25 20:18:12工具:一个jar包即可:jave-1.0.2.jar可以切割wav格式的音频文件完整工程目录就一个jar包,一个main类代码:package com.zit;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;... -
java 切割_java字符串切割
2021-02-12 10:13:11标签(空格分隔): java方法一:split() 方法——JDK 1.4 or later##例子:public class StringSplit {public static void main(String[] args) {//一般用法String sourceStr = "1,2,3,4,5";String[] sourceStrArray ... -
java wav 切割_java切割wav音频文件
2021-02-25 20:18:17import it.sauronsoftware.jave.Encoder;import it.sauronsoftware.jave....import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import ... -
java实现图片切割_Java切割图片的函数
2021-03-01 06:55:02package ...import java.awt.Dimension;import java.awt.Image;import java.awt.Point;import java.awt.Rectangle;import java.awt.image.BufferedImage;import java.io.File;import java.io.FileInput... -
java切割文件_Java 文件切割工具类
2021-02-12 15:45:51importjava.io.File;importjava.io.FileInputStream;importjava.io.FileOutputStream;importjava.io.IOException;importjava.util.Arrays;importorg.apache.commons.io.FileUtils;importorg.apac... -
矩形切割-Java
2021-01-21 17:27:43题目描述: 小明有一些矩形的材料,他要从这些矩形材料中切割出一些正方形。 当他面对一块矩形材料时,他总是从中间切割一刀,切出一块最大的正方形,剩下一块矩形, 然后再切割剩下的矩形材料,直到...import java.u -
java文件切割上传_java springboot 切割分片上传大文件
2021-02-26 11:39:12【实例简介】java springboot 切割分片上传大文件,java springboot 切割分片上传大文件【实例截图】【核心代码】springboot-bigfile└── springboot-bigfile├── pom.xml└── src├── main│ ├── java│ ... -
arraylist切割_JAVA List和Map切割工具详解
2021-02-27 09:19:42使用PHP开发的同学都知道array_chunk函数,其作用是将数据进行切割分段,但是在 java中却找不到合适的给List和Map分段的函数。在此我写了一个切割工具,分享一下import org.springframework.util.CollectionUtils;... -
Java 图片切割
2016-10-28 15:16:00最近做一个猜图小游戏,需要将一张大图动态切割成小图块,写个博客记录一下。 import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.Im... -
java 切割图片
2014-03-21 15:37:24在java中可能要对图片进行操作,对图片的切割。一般用awt包。 package com.sysi.cn; import java.awt.Dimension; import java.awt.Image; import java.awt.Point; import java.awt.Rectangle; import java.awt... -
java切割文件_Java如何将大文件切割成小文件
2021-02-12 15:45:53运用Java编写代码将一个大文件切割成指定大小的小文件思路:对已知文件进行切割操作 –> 得到多个碎片文件使用:1、 1个字节输入流 –> 读取已知文件中的数据2、 多个字节输出流 –> 生成多个碎片文件思路... -
Java矩形切割
2020-07-10 21:21:33当他面对一块矩形材料时,他总是从中间切割一刀,切出一块最大的正方形,剩下一块矩形,然后再切割剩下的矩形材料,直到全部切为正方形为止 例如,对于一块两边分别为5和3的材料(记为5x3),小明会依次切出3x3、2x2、... -
java文件切割
2018-01-05 22:33:21在main方法里,有文件合并与分割的调用方式 ...import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; import java.io.RandomAccessFile; public class SplitU... -
java文件切割_Java实现文件切割拼接的实现代码
2021-02-12 16:47:10新建一个 FileSlice 类:有切割方法,拼接方法。 public class FileSlice { /** * 分割文件 * @param filePath 文件路径 * @param filePieceSize 文件每块大小,单位为字节,为-1则默认为每块64M * @return 成功返回... -
java切割音频文件
2019-09-03 14:21:57java切割音频文件:https://blog.csdn.net/weixin_34023863/article/details/93792055 -
Java文件切割
2017-09-10 23:55:14切割文件:论坛等可以上传附件文件,但是对文件的大小有限制,这时可以将整个文件切割成多个子文件(碎片文件)。别人可以下载这些子文件,然后将其合并在一起,就可以正常查阅。 切割文件的方式: 1、 不管... -
java切割图片吗_Java能切割别拉伸图片吗
2021-02-28 13:39:10展开全部当然可以啊。...import java.awt.Image;import java.awt.image.BufferedImage;import java.io.File;import java.io.IOException;import javax.imageio.ImageIO;public class ImageCut {/*** @para... -
钢条切割(java)
2020-05-06 18:40:35Serling公司购买长钢条,将其切割为短钢条出售。切割工序本身没有成本支出。公司管理层希望知道最佳的切割方案。假定我们知道Serling公司出售一段长为i英寸的钢条的价格为pi(i=1,2,…,单位为美元)。钢条的长度均为...
收藏数
2,291
精华内容
916
-
2021_拥抱零信任安全模型_英中对照.pdf
-
只需要会Oracle,就是全栈开发工程师了?!
-
刑法--期末复习知识点总结.pdf
-
停止更新一段时间,我要投入另一项爱好了
-
浙江科技学院《线性代数》06-14年历年期末考试试卷(含答案).pdf
-
龙芯生态应用开发基础:C语言精要
-
剑指 Offer 28. 对称的二叉树
-
MySQL 高可用工具 heartbeat 实战部署详解
-
vue3从0到1-超详细
-
Mycat 实现 MySQL的分库分表、读写分离、主从切换
-
PowerBI重要外部工具详解
-
765. 情侣牵手 查并集
-
C和C++课程
-
常见数据分析方法
-
一天学完MySQL数据库
-
西南科技大学模电期末试卷.pdf
-
西南科技大学《电路分析A》期末考试试卷(含答案).pdf
-
面试-双素数
-
【爱码农】C#制作MDI文本编辑器
-
6、数据分析matplotlib