排序之双向冒泡排序
双向冒泡排序简单地说就是从左向右的遍历寻最大,从右向左寻最小的过程。正常情况下,双向冒泡排序会比普通冒泡排序快。
#include<bits/stdc++.h> using namespace std; void swap(int &x,int &y){ int temp; temp=x; x=y; y=temp; } void DbSort(int *a,int n){ int l,r; l=0; r=n-1; bool flag=true; while(l<r&&flag){ flag=false; for(int j=1;j<r;++j){ if(a[j]>a[j+1]){ swap(a[j],a[j+1]); flag=true; } } --r; for(int j=r;j>l;--j){ if(a[j]<a[j-1]){ swap(a[j],a[j-1]); flag=true; } } ++l; } } int main(){ int k; int a[10010]; cin>>k; while(k--) { int n=4; cout<<"输入原始数据为:"; for(int i=0;i<n;i++){ cin>>a[i]; } DbSort(a,n); cout<<"双向冒泡排序后:"; int i; for(i=0;i<n-1;i++){ cout<<a[i]<<" "; } cout<<a[n-1]<<endl; cout<<"------------------------"<<endl; } return 0; } /* 双向分别是左到右(边界是r),右到左(边界是l) 每次都可以确定一个数字,外层循环通过while判断 */
E-R图设计原则
E-R图的设计虽然没有一个绝对固定的方法,但一般情况下,需要遵循以下基本原则。
- 先设计局部E-R图,再把每一个局部的E-R图综合起来,生成总体的E-R图。
- 属性应该存在于且存在于某一个实体或者关系中。这样就可以避免数据冗余。
- 实体是一个单独的个体,不能存在于另外一个实体中,既不能作为另外一个实体的属性。
- 同一个实体在同一个E-R图中只能出现一次。
数据库设计的几个阶段和目标(如何建立一个数据库软件系统)
1. 需求分析: 分析用户的需求,包括数据、功能和性能需求;生成系统分析报告。
2. 概念结构设计:主要采用E-R模型进行设计,包括画E-R图;生成全局E-R图
(上面两步独立于数据库管理系统)
3. 逻辑结构设计:通过将E-R图转换成表,实现从E-R模型到关系模型的转换,进行关系规范化;
4. 数据库物理设计:主要是为所设计的数据库选择合适的存储结构和存储路径;
(上面两步与数据库管理系统相关)
5. 数据库的实施:包括编程、测试和试运行;
6. 数据库运行和维护:系统的运行和数据库的日常维护
IP地址的作用,分为几个部分,分别有什么作用
1、IP地址的表示方法 IP地址 = 网络号+主机号
作用:IP地址就是给每个连在Internet网的主机分配一个在全世界范围内唯一的标示符。分为A、B、C、D、E五类地址,在每类地址中,还规定了网络编号和主机编号。
在 TCP/IP协议中,IP地址是以二进制数字形式出现的,共32bit,1bit就是二进制中的1位,但这种形式非常不适用于人阅读和记忆。
因此决定采用一种"点分十进制表示法"表示IP地址:面向用户的文档中,由四段构成的32 比特的IP地址被直观地表示为四个以圆点隔开的十进制整数,其中,每一个整数对应一个字节(8个比特为一个字节称为一段)。
A类:一个A类IP地址由1个字节的网络地址和3个字节主机地址组成,网络地址的最高位必须是“0”(每个字节有8位二进制数)。
B类:一个B类IP地址由2个字节的网络地址和2个字节的主机地址组成,网络地址的最高两位必须是“10”。
C类:一个C类地址是由3个字节的网络地址和1个字节的主机地址组成,网络地址的最高三位必须是“110”。
D类:用于多点播送。第一个字节以“1110”开始。因此,任何第一个字节大于223小于240的IP地址是多点播送地址。全零(“0.0.0.0”)地址对应于当前主机。全“1”的IP地址(“255.255.255.255”)是当前子网的广播地址。
E类:以“11110”开始,为将来使用保留。
用作特殊用途的IP地址:凡是主机段,即宿主机ID全部设为“0”的IP地址称之为网络地址,如129.45.0.0;广播地址:凡是主机ID部分全部设为“1”的IP地址称之为广播地址,如129.45.255.255;
保留地址:网络ID不能以十进制“127”作为开头,在此类地址中数字127保留给诊断用。如127.1.1.1用于回路测试,同时网络ID的第一个8位组也不能全置为“0”,全“0”表示本地网络;网络ID部分全部为“0”和全部为“1”的IP地址被保留使用。