精华内容
下载资源
问答
  • 关于动态的理解

    2007-12-11 10:09:38
    就我的理解,就是:在程序运行之前,有一个事物是不确定。而是在程序运行过程中某一时刻,影响这个事物各个因素全部确定下来后这个事物才最终确定下来,下次它又[color=red]可能[/color]是不定。 以上...
    在论坛和一些程序员书籍上经常看到动态二字,如动态邦定、动态创建、动态建表、动态查询等等。但就究竟什么是动态了? 

    就我的理解,就是:在程序运行之前,有一个事物是不确定的。而是在程序运行的过程中的某一时刻,影响这个事物的各个因素全部确定下来后这个事物才最终确定下来,下次它又[color=red]可能[/color]是不定的。

    以上就是我的理解不知是否准确,小弟才疏学浅,请各位指教。

    但有一次我在公司的内网论坛上看到有一位同事他想动态的改变数据库的结构(它一部分是用xml定义的自动生成的临时表,还有一部分是根据用户的输入而创建的表)。当时我很惊讶,因为我真的没有这样做过。不过他想这样做是可以做到的。


    我就在想,难道动态就没有一个限制吗? 如数据库的结构是决不能随意改变的等等。。。(我是这样认为的)

    对于一种语言或是数据库操作语言来说,可能没有这种限制,但我们应该知道什么可以改,什么不能随意改动。

    我工作不久,那想问一下:
    什么可以动态生成,什么不可以动态的改变呢?
    展开全文
  • 关于动态规划的理解

    2016-01-15 22:38:44
    从大二起,也做了不少的动态规划题,但对于很多动态规划状态还是一知半解,究其原因,是在平时做题的过程中,不求甚解,遇到问题只是匆匆看看题解,而不深入探讨。导致很多问题都模模糊糊的过去了,做题也等于没有做...

    对于动态规划的理解

    从大二起,也做了不少的动态规划题,但对于很多动态规划状态还是一知半解,究其原因,是在平时做题的过程中,不求甚解,遇到问题只是匆匆看看题解,而不深入探讨。导致很多问题都模模糊糊的过去了,做题也等于没有做。从现在开始正式的反思总结。新的一年,新的开始^_^

     1. ZOJ 1679  Telescope

      题意:这道题是给出一个圆,上面有n个点,从中选出m个点,选择一种方案使得构成的m多边形面积最大(m个点依次顺序连接形成多边形)。

    题解:(动态规划很多时候都需要枚举子问题的状态,从而推出所需问题的最优策略,这样,对于子问题的枚举策略就显得至关重要。既然是枚举,所有的情况都不能遗漏,枚举条件的选取恰当与否决定了问题能否顺利解决)这题的数据规模是40,因为涉及到最大面积,考虑动态规划,根据题意,猜测是区间DP,对于DP参数的设定:

    dp(i, j, k) 表示以i开始,以j结束的拥有k个点的多边形的最大面积,这昂最总答案是max{dp(i, j, m)}.

    状态转移方程:dp(i, j, k) = max{ dp(i, j, k) , dp(i, q, k - 1) + Triangle(i, q, j) }.

    代码:

    #include <cmath>
    #include <cstdio>
    #include <cstring>
    #include <iostream>
    #include <algorithm>
    
    using namespace std;
    const double PI = acos(-1.0);
    const int INF = 0x3f3f3f3f;
    #define N 50
    
    
    int n, m;
    double dp[N][N][N], _area[N][N][N];
    struct Point{
    	double x, y;
    }P[N];
    
    double cross(Point a, Point b, Point c)  
    {  
        return (b.x-a.x)*(c.y-a.y)-(c.x-a.x)*(b.y-a.y);  
    }  
    
    double area(Point a, Point b, Point c)  
    {  
        return fabs(cross(a, b, c)/2.0);  
    } 
    
    void init(){
    	for(int i = 0; i < n; i++)
    		for(int j = 0; j < n; j++)
    			for(int k = 0; k < n; k++){
    					_area[i][j][k] = area(P[i], P[j], P[k]);
    				}
    	memset(dp, 0, sizeof dp);
    }
    
    void DP(){
    	for(int i = 0; i < n; i++)
    		for(int j = i + 2; j < n; j++)
    			for(int k = 3; k <= m; k++)
    				for(int q = i + k - 2 ; q < j; q++)
    					dp[i][j][k] = max(dp[i][j][k], dp[i][q][k-1] + _area[i][j][q]);
    
    	double ans = -INF;
    	for(int i = 0; i < n; i++)
    		for(int j = i + m - 1; j < n; j++){
    			ans = max(ans, dp[i][j][m]);
    		}
    	printf("%.6lf\n", ans);
    }
    
    int main(){
    	// freopen("2016.txt", "r", stdin);
    	while(scanf("%d%d", &n, &m) && n + m){
    		for(int i = 0; i < n; i++){
    			double tmp;
    			scanf("%lf", &tmp);
    			tmp = 2 * PI * tmp;
    			P[i].x = cos(tmp);
    			P[i].y = sin(tmp);
    		}
    		init();
    		DP();
    	}
    	return 0;
    }




    展开全文
  • 关于动态代理的理解

    2018-09-03 23:42:38
    1 静态代理:事先写好代理类,可以手工编写,也可以用工具...2 JDK动态代理:基于Java反射机制实现,必须要实现了接口业务类才能用这种办法生成代理对象。新版本也开始结合ASM机制。  cglib动态代理:基于ASM机...

    1  静态代理:事先写好代理类,可以手工编写,也可以用工具生成。缺点是每个业务类都要对应一个代理类,非常不灵活。
        动态代理:运行时自动生成代理对象。缺点是生成代理代理对象和调用代理方法都要额外花费时间。

     

    2   JDK动态代理:基于Java反射机制实现,必须要实现了接口的业务类才能用这种办法生成代理对象。新版本也开始结合ASM机制。
            cglib动态代理:基于ASM机制实现,通过生成业务类的子类作为代理类。
    Java 发射机制的常见应用:动态代理(AOP、RPC)、提供第三方开发者扩展能力(Servlet容器,JDBC连接)、第三方组件创建对象(DI)

     

    3 如果目标类实现了一个或多个接口,那么Spring将创建一个实现每个接口的JDK动态代理。如果目标类没有实现接口,Spring将使用CGLIB动态创建一个新类,它是目标类的子类(“extends”)使用jdk代理目标类必须实现接口 

     

    4:spring如果要代理的目标对象实现至少一个接口,则将使用JDK动态代理。目标类型实现的所有接口都将被代理。如果目标对象未实现任何接口,则将创建CGLIB代理。

     

    5:jdk动态代理实现invocationhandler接口  重载invoke方法 

    public Object invoke(Object proxy, Method method, Object[] args

    其中method参数是代理的这个类的方法 args是这个方法的参数 proxy是代理类的实例

    method.invoke(target,args)传入被代理类和方法的参数反射得到

    展开全文
  • 今日在LeetCode 53. 最大子序和上看到的一个题解,很好的诠释了动态规划的内涵 关于遍历: i位置是子序列的头。这是暴力法。...这是最常见的动态规划。 今日实战的动态规划 53. 最大子序和 70. 爬楼梯 ...

    今日在LeetCode 53. 最大子序和上看到的一个题解,很好的诠释了动态规划的内涵

    关于遍历:

    1. i位置是子序列的头。这是暴力法。
    2. 以子序列长度为单位遍历。见LeetCode 5.最长回文子串
    3. i位置是子序列的尾。这是最常见的动态规划。

    今日实战的动态规划
    53. 最大子序和
    70. 爬楼梯

    展开全文
  • 关于动态链表的理解

    2018-12-01 17:29:32
    建立动态列表具体过程,分为三个步骤: (1)分配结点 struct Student *p1; //建立struct Student类型指针变量 p1 p1 = (struct Student *)malloc(sizeof(struct Student)); //p1指向新分配内存空间 (2)...
  • 动态规划我觉得可以结合一些例子来帮助自己理解动态规划,比如01背包问题,国王挖金矿问题,然后看看自己需要解决问题和这些典型问题对比有没有一些共性(其实也就是你问题符不符合动态规划问题一些特点),...
  •  在安卓6.0之前,安装app时候会产生一个权限列表,只有用户允许这些权限后app才能安装成功,但是并不是每一个用户都能理解这些权限究竟是干什么,为了安装应用只能同意极不安全。所以Android6.0动态权限就出来了...
  • 按照定义,动态规划是将一个大问题分解为一堆小问题,但其核心并不是分解问题,而是这些小问题是否被“重复调用”。 举个例子,有n个阶梯,一个人每一步只能跨一个台阶或是两个台阶,问这个人一共有多少种走法?首先...
  • Android静态注册和动态注册以及跨平台静态和动态注册的理解 何为Android广播: Android广播就是一个全局大喇叭,就是告知,就像时校园大喇叭,告诉学生该休息啦,该上课啦,该放学啦······就是一种告知...
  • 首先我是在用spring AOP的时候才认识到java中的动态代理,在这里我稍微谈一谈我自己对JDK动态代理的理解 首先说明两个问题,在前面我写的文章见过静态代理和动态代理,静态代理如AspectJ而动态代理又有JDK动态代理和...
  • 今天终于在看了一些参考资料后硬逼着自己把jdk的动态代理的来龙去脉理解研究了一番。并记载下来以求加深印象。 对于动态代理可以理解为:在程序运行中,程序把我们对目标对象A的访问转移到对代理对象B的访问,因为...
  • 动态代理: 特征: 字节码随用随创建,随用随加载 作用: 不修改源码基础上,对已有方法进行加强 优势: 去除重复代码,对重复代码进行统一管理和调配 ...
  • 比如windows桌面快捷方式,你在访问时其实访问到是快捷方式指向地址,这个快捷方式就相当于一个代理服务器,在你访问后执行了其中定位效果,比如我们开发一个接口,但是我们不想让其他人直接访问,我们加一个代理,...
  • 面试题 02.02. 返回倒数第 k 个节点 ...个人c语言学还是不够扎实,看了一下大佬给图片解释和提点,用一下代码解决了问题。 面试题 02.02. 返回倒数第 k 个节点 /** * Definition for singly-linked list. * struc
  • 今天下午认认真真的学习了一下JDK的动态代理,过程中遇到了一些不懂的东西,但是最后还算是想明白了,下面说说自己的理解。 JDK动态代理的过程: 1、实现一个接口(假如是IMyService),然后实现自己的类(也...
  • 今天又一次听了动态规划,有些许感悟,所以想和大家分享一下 动态规划是什么? 是一种思想, 把问题逐渐变小,使我们通过一个式子就可以推出结果(在递推基础上) 要点:1.方程式 2边界条件 3.状态之间...
  • 关于背包问题动态规划代码的理解和应用—— 首先,关于背包问题动态规划详细讲解在https://v.youku.com/v_show/id_XMTQ3MzI0NzI2OA==.html这个视频链接有详细介绍,在此引用某位大神制作视频表示感谢,同时也...
  • 动态规划解决就是需要重复过程 dp数组 存储已经算过重复值 还需要抽象化事物能力,列出状态方程,找到第一个突破点,之后逐步击破到答案
  •  关于学习,我总是在探索适合自己的理解方式,因为我是理科思维,思考方式偏向于"因为-所以",因此思考事情喜欢弄清前因后果、来龙去脉、前世今生...我一直相信坚信:知其然更要知其所以然,无论技术还是人生。...
  • 这次国赛选了B题,虽然拉了但是在做过程中有一些小理解,想在这里分享出来。 对于求解最优序列问题,序列中每一个位置点有自己状态,最优序列即为求得最优状态序列,这涉及三部分内容: 定义状态 ...
  • 为什么要动态分配内存?目的是用来解决传统数组四个缺陷。一起来看看
  • 关于如何配置动态资源分配,参见:http://spark.apache.org/docs/1.6.3/job-scheduling.html#dynamic-resource-allocation cloudera manager中默认配置时开启了spark 动态资源分配,也就是spark.
  • 关于动态链接库和静态链接库的理解1.概述2.静态链接库与动态链接库原理3.dll动态链接库文件编写 1.概述 之前在学习乃至秋招面试过程中,对于动态链接库和静态链接库的理解都只是浮于表面对其基本定义和优缺点...
  • 预备知识—程序内存分配 一个由C/C++编译程序占用内存分为以下几个部分...动态数据则通过堆栈来存放。 在内存中,它们位置如下: +------------------+ 内存低端 | 程序段 | |------------------| | 数据
  • 简单来说,递归就是一个概念能够用自身来解释,比如说一本字典,每个字词解释是依靠字典中其他字词来解释。一般来说,计算机中遇到递归问题大多是把一个问题分解成规模更小子问题求解,再进行合并。 ...
  • 动态网页是指网页文件里包含了程序代码,通过后台数据库与Web服务器的信息交互,由后台数据库提供实时数据更新和数据... 这里说的动态网页,与网页上的各种动画、滚动字幕等视觉上的“动态效果”没有直接关系,动态网

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,954
精华内容 1,181
关键字:

关于理解的动态