当前位置: 首页 > news >正文

南京网站定制开发360推广和百度推广哪个好

南京网站定制开发,360推广和百度推广哪个好,西部数码网站管理助手 没有d盘,网站维护指导巩固基础,砥砺前行 。 只有不断重复,才能做到超越自己。 能坚持把简单的事情做到极致,也是不容易的。 数据结构和算法 程序 数据结构算法 数据结构是算法的基础 问题1:字符串匹配问题。str1 是否完全包含 str2 1)暴…

巩固基础,砥砺前行 。
只有不断重复,才能做到超越自己。
能坚持把简单的事情做到极致,也是不容易的。

数据结构和算法

程序= 数据结构+算法
数据结构是算法的基础

问题1:字符串匹配问题。str1 是否完全包含 str2

1)暴力匹配
2)KMP算法

问题2:汉诺塔游戏

问题3:8皇后问题

问题4:骑士周游

问题5:写出单链表表示的字符串类以及字符串节点类的定义,并依次实现他的构造函数、以及计算字符串的长度、串赋值、判断两串相等、求子串、两串拼接、求子串在串中的位置等成员函数

问题6:使用二维数组保存棋盘上的数据,如何判断输赢?完成存盘退出和继续上局的功能

棋盘 二维数组->稀疏数组->写入文件
读取文件->稀疏数组->棋盘

问题7:约瑟夫问题(丢手帕),编号为 1,2,3,4……n的人围成一圈,约定编号为K(1<=K<=n)的人从1开始报数,数到m的那个人出列,然后从m的下一位又开始报数,数到m的那个人又出列,依次类推,直到所有人都出列为止,由此产生的一个出队的编号的序列

问题8:修路问题

问题9:最短路劲

稀疏数组和队列

将棋盘上的数据存储下来,可以使用二维数组来存储,没有棋子的可以使用默认的0,因此记录了很多没有意义的数据
–>优化:可以使用稀疏数组来存储

稀疏数组
记录数组有多少行 多少列;
把具体的有数据的行列以及数据记录下来,缩小程序的规模

棋盘数据存储和恢复:
使用稀疏数组来保留二维数组中有效的数据;
将稀疏数组存盘,同时将稀疏数组恢复为二维数组;

代码实现

package com.ttzz.a3;public class SparseArray {// 这是一个10*10的棋盘private static final int ROW_COL = 10;private static final int BLACK = 1;private static final int WHITE = 2;public static void main(String[] args) {int[][] aa = new int[ROW_COL][ROW_COL];
//		 System.out.println("棋盘:");
//		 printArray(aa);// 棋盘填充数据aa[3][4] = BLACK;aa[7][5] = BLACK;aa[3][2] = BLACK;aa[5][1] = BLACK;aa[6][6] = WHITE;aa[8][3] = WHITE;aa[1][1] = WHITE;aa[4][0] = WHITE;
//		 printArray(aa);int size = 0;// 有效数据for (int i = 0; i < ROW_COL; i++) {for (int j = 0; j < ROW_COL; j++) {if(aa[i][j]!=0) {size++;
//					System.out.println(aa[i][j]);}}}
//		System.out.println("size="+size);int bb[][] = new int[size+1][3];bb[0][0] = ROW_COL;bb[0][1] = ROW_COL;bb[0][2] = size;int count = 0;for (int i = 0; i < ROW_COL; i++) {for (int j = 0; j < ROW_COL; j++) {if(aa[i][j]!=0) {count++;
//					System.out.println(count+","+i+","+j+","+aa[i][j]);bb[count][0] = i;bb[count][1] = j;bb[count][2] = aa[i][j];}}}
//		printArray(bb);//将稀疏数组转为数组int cc[][] = new int[bb[0][0]][bb[0][1]];
//		printArray(cc);for (int i = 1; i < bb.length; i++) {for (int j = 0; j < bb[i].length; j++) {System.out.println(i+","+j+","+bb[i][j]); cc[bb[i][0]][bb[i][1]] = bb[i][2];}}printArray(cc);}public static void printArray(int[][] item) {for (int i = 0; i < item.length; i++) {for (int j = 0; j < item[i].length; j++) {System.out.printf("%d\t", item[i][j]);}System.out.println();}}}

数据结构和算法-(排序算法-冒泡排序)

1.概念:什么是稳定排序和非稳定性排序?

相同元素排序中之后,顺序和之前的顺序一样,则为稳定排序,否则为非稳定性排序。道听途说,不足为惧。都是抄的,天下文章一大抄,先抄了再说。

2. 冒泡排序代码实现

2.1 普通版本

​public static void sort1(int arr[]) {for (int i = 0; i < arr.length; i++) {for (int j = 0; j < arr.length-i-1; j++) {int item = 0;if(arr[j]>arr[j+1]) {item = arr[j];arr[j] = arr[j+1];arr[j+1] = item;}}}}​

2.2 优化版本 某一步之后,后面的代码有序了,后面的代码就不排序了。

​
public static void sort2(int arr[]) {for (int i = 0; i < arr.length; i++) {boolean iscontinue = true; for (int j = 0; j < arr.length-i-1; j++) {int item = 0;if(arr[j]>arr[j+1]) {item = arr[j];arr[j] = arr[j+1];arr[j+1] = item;iscontinue = false;}}if(iscontinue) {break;}}}​

2.3 优化版2

​
public static void sort3(int arr[]) {int sortborder = arr.length-1;//表示比较的边界int lastcomindex = 0; //最后一次比较的位置for (int i = 0; i < arr.length; i++) {boolean iscontinue = true; for (int j = 0; j < sortborder; j++) {int item = 0;if(arr[j]>arr[j+1]) {item = arr[j];arr[j] = arr[j+1];arr[j+1] = item;iscontinue = false;lastcomindex = j;}}sortborder = lastcomindex;if(iscontinue) {break;}}}​

使用Java实现的栈

package aa.datastructure;import java.util.Arrays;/***  栈*/
public class MyStack<E> {private Object[] data = null;private int length = 0; // 栈的容量private int top = -1; // 栈顶的指针MyStack() {}MyStack(int initSize){if(initSize>=0) {this.length = initSize;data = new Object[initSize];top = -1;}else {throw new RuntimeException("初始容量不能小于0"+initSize);}}public boolean push(E e) {if(top == length-1) {throw new RuntimeException("栈已经达到最大值");}else {data[++top] = e;return true;}}public E pop() {if(top == -1) {throw new RuntimeException("空栈");}else {return (E) data[top--];}}public E peek() {if(top == -1) {throw new RuntimeException("空栈");}else {return (E) data[top];}}public static void main(String[] args) {MyStack sm = new MyStack(3);for (int i = 0; i < 3; i++) {sm.push(i);}System.out.println(Arrays.toString(sm.data));for (int i = 0; i < 3; i++) {System.out.println(sm.peek());}for (int i = 0; i < 3; i++) {System.out.println(sm.pop());}}}

使用Java实现的队列

package aa.datastructure;import java.util.Arrays;/** 队列*/
public class MyQueue<E> {private int length;//容量private Object[] data;private int front;//头private int rear;MyQueue(){}MyQueue(int initSize){if(initSize>=0) {length = initSize;data = new Object[initSize];front = rear = 0;}else {throw new RuntimeException("队列初始化大小不能小于0");}}public boolean add(E e) {if(rear == length) {throw new RuntimeException("队列满了");}else {data[rear++] = e;return true;}}public E pool() {if(front == rear) {throw new RuntimeException("空队列");}else {E value = (E) data[front];data[front++] = null;return value;}}public E peek() {if(front == rear) {throw new RuntimeException("空队列");}else {E value = (E) data[front];return value;}}public static void main(String[] args) {MyQueue mq = new MyQueue(10);for (int i = 0; i < 5; i++) {mq.add(i);}System.out.println(Arrays.toString(mq.data));for(int i = 0; i < 5; i++) {System.out.println(mq.pool());}for(int i = 0; i < 5; i++) {System.out.println(mq.peek());}}}

【临渊羡鱼不如退而结网】

http://www.hkea.cn/news/983971/

相关文章:

  • 视频网站怎么制作网店推广的作用是什么
  • 网站栏目怎么做单独的搜索框云南疫情最新消息
  • 独立商城b2c电商网站开发合肥百度seo代理
  • 做购物网站需不需要交税费郑州网站托管
  • 是不是做网站就能赚钱谷歌seo关键词优化
  • 萝岗门户网站建设今日重大新闻头条财经
  • 个人相册网站模板怎么把网站排名排上去
  • 建设外贸网站案例统计站老站长推荐草莓
  • 1688网站的特点全网营销系统
  • 西安做网站企业网址怎么申请
  • 专业网站建设品牌百度指数里的资讯指数是什么
  • 做网站规避什么网站制作
  • 网站开发工作方案2022拉人头最暴利的app
  • 网站建设好还是阿里巴巴好磁力猫torrent kitty
  • wordpress跨域访问前端优化网站
  • 住房和城乡建设部网站买卖合同北京中文seo
  • WordPress自己安装了插件深圳seo推广外包
  • 建立网站舆情分析报告范文
  • wordpress 空格 插件班级优化大师app
  • 成都有实力的网站建设网络培训心得
  • 中企高呈建设网站在百度怎么创建自己的网站
  • 女的和女的做那个视频网站怎么在网上做网络营销
  • 网站开发需要什么软件百度怎样发布作品
  • 专门做宠物食品的网站市场调研怎么做
  • 兰州网站建设q.479185700棒成年s8视频加密线路
  • 付费网站推广seo关键词排名优化怎么收费
  • 网站由那些组成google网页搜索
  • 对一个网站做性能测试谷歌paypal官网入口
  • 北京住房投资建设中心网站首页快速排名怎么做
  • 中国网站制作 第一个佛山网站优化