Lingo基本操作
Lingo基本操作
前言
Lingo是一门主要求解非线性规划数学模型的编程软件,记得最初接触Lingo是在阅读《数学建模教程》一书,该书在第五章主要讲解使用Lingo来解决优化问题,也是在那个时候认识到了Lingo的强大之处。Lingo的使用就好比解决一道简单的数学问题,而你只需要使用Lingo支持的编程规范给其提供充足的已知条件即可,之后会自动使用相关算法为您解答。为了日后更加方便的查询Lingo相关知识,所以将Lingo的基本使用在此记录。
关于Lingo的下载及安装问题博主已做整理,可参考本篇教程 Lingo安装
一、Lingo基本运算符
1.1 算术运算符
^:乘方
*:乘
/:除
+:加
-:减
1.2 逻辑运算符
在Lingo中,逻辑运算符主要用于集循环函数的条件表达式中,来控制在函数中哪些集成员被包含,哪些被排斥。
| 符号 | 说明 |
|---|---|
| #and# | 且,& |
| #or# | 或,|| |
| #not# | 非,! |
| #eq# | 等于,== |
| #ne# | 不等于,!= |
| #gt# | 大于,> |
| #ge# | 大于等于,>= |
| #lt# | 小于,< |
| #le# | 小于等于,<= |
1.3 关系运算符
= 、<= 、 >=
二、函数
2.1 标准数学函数
| 函数 | 说明 |
|---|---|
| @abs(x) | 绝对值 |
| @sin(x) | 正弦值,采用弧度制 |
| @cos(x) | 余弦值 |
| @tan(x) | 正切 |
| @exp(x) | 指数,aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAiCAYAAABbXymAAAABhklEQVRIS+2UPctBYRjHf8dbKcqAUXkZlbJKGSkmq+V8AYtNvoDJoPgGyqjEwmSUkhiVhUEiC4N0dN/lqfN4Xs556inDucbT3e9c9+9/3ZeiaZrGP5RigZ9WLRUf82WpeDMVx+ORwWDAfr8nGo2yXq8JhUIUi0UURdEtBsPh3e93JpMJqVSK1WrFdDqV0O12i6qqfweLXXW73XC5XPT7fTweD5lM5tv1ZbjjJ0HA2+02uVyOWCyGuInD4Xj5wZfgzWZDt9uVXV0uF7LZLJFIhEajQT6fp9frUS6XuV6vCO/xePx38Gw2o9VqUavVCIfDnE4nxuOx7LDT6RAMBiXQ6XTi8/mkDrvd/jP4cDhQrVZJp9OUSiWE19FohNvtlt/MlE7FfD6nUqmQTCbxer0EAgE5BeKqNpvNDJcXcLPZpF6v4/f7TYE+H9aBd7sdAiy6foLFI1gulxQKBVNd68DC6WKxYDgcypDO5zOJREL6FWGZKdNzbBRugd9sHxsNTpyzwrPCe52XB08LC6ooqGhVAAAAAElFTkSuQmCC" style="font-size: inherit; color: inherit; line-height: inherit; padding: 0px; margin: 0px auto; max-width: 100%; display: inline-block; vertical-align: middle;"> |
| @log(x) | 自然对数 |
| @lgm(x) | gamma函数的自然对数 |
| @sign(x) | x<0返回-1,否则返回返回1 |
| @floor(x) | 取整 |
| @smax(aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGUAAAAiCAYAAABGIRcbAAAFWElEQVRoQ+1ZWUiVaxRdmpZomlmUSg5FWBb1kkpaWqDiUBqhiA1EUVIgRJhmhgNOKKghomLqgw/6YEY0WFZQBkFKJmiYQT6YAw6UmAMOSRprwzl4btfpaPbfy7/hf/Cc79/T2nvt/R0NZmZmZqCKojJgoIKiKDzEGRUU5WGigqJATFRQVFCUmAEF+qTOFBUUBWZAgS6pnaKCosAMKNAltVNUUBSYAQW6pHaKCooCM6BAl9RO+S+AMjg4iMrKSvz48QOGhoZwc3NDQ0MDRkdHcf78eWzdulXvMH7+/IknT56gq6sL3759Q1BQEBobG/H9+3ccOnQIHh4eeuv+2y92dnbi4cOHmJqawpYtW2Bra4vW1lYw5kuXLsHMzGzRLup0ysTEBB49eoSAgAAYGxsjKytLlLu7u+PWrVtITU3Fvn37RDmNNzc3Y8+ePTA1NV2UwdraWtG3a9cuPH36FM+ePUN0dDTy8/Pls4sXL2J8fBx3797Fly9fYGlpiQsXLsDCwmJR+v/WIRbyy5cvceLECYyNjeHmzZtScObm5rhz5w4yMjJgZ2e3aPd0QGH18tm9e7d0RlJSEk6fPo29e/eit7cXDg4O0j3V1dX48OED+vr6BKgNGzYsaJAg8p39+/cL4OXl5RgZGcHly5fR0dEBGxsbmJiYoKamBk5OTnB0dERZWRnWrl2Ls2fPwsDAYEEbf+sAu4Rib28veUpPT8f169dhZWUleWQhLsX/OWdKW1sbbt++jcTEREnYP4WJLCwslA5aDCiz32c10XFfX18cPXpU+xUp8/79+wgODpbuI7Wxo2JiYgSw+YTVSn8OHz6MI0eO6BwlAxQXF2Pbtm1SzWvWrNF+z2KpqKiQv8+cOSMFsxypq6vDvXv3kJycjPXr1+ulSgcUOkjaIOJsRyZFk5CWlhbs2LFDS1VLBYX/de7u7pb3WT1s6bi4OOk+Vtf09DQ2bdqE7OxsSaqnp6d05KdPn3Dt2rUFk9XT04P4+Hj4+/sjLCxMJxnDw8NISUnBzp07ERERoQMKAcvNzZXztLMQ+P+WZergnNR0N89wjjAmzhUyz9evXyUe6t+8ebPQ/9DQEE6dOvVbbDqgEGUmJS0tTWYLOZ30Qkp7/fo1Tp48qQ1oqaBQR2xsrJZrWU2ZmZlSTQ8ePBAgCAqXCrb7xo0bkZOTg9DQUJlbShbG8uLFC4mP85EMEBgYiPb2dnz+/Bl+fn548+aNzBievXHjBlikeXl5uHr16m9MowMK0S4pKZHkuLq64tWrV5IcKgsJCdHZIOYChY5wQbhy5YrMD42wmqibFOXs7CyVw2fdunU4fvw4tm/frj1Lhx8/fgxra2vxQ8PHPE+gfHx85FlNmc92U1OTFDFz5eLiIhsmKZ90SXCMjIykM96+fSsFzkIjO3CuRkZG/rYo6X1PmQsUtmtCQoJscGxhfYRBTk5Oyjo+e0AyEC4fpImoqCi9qEYff/jOcm2z0EpLS3Hw4EHZYMk8pPPw8HBhn9lxrjgoDIAcTqMc2EsVdtrHjx9lYDOQ+vp6eHt7yxZGYadxQyPoms+WakPf88uxzeWmoKBANkneY4qKiuDl5YWBgQG5o81eMPQChfz4/v17vHv3ThQzgZr7CwNmUklXBw4cWFL8DJoz7fnz59r3zp07J/cXjXCgUz95e7VlObb7+/tRVVUl7EHK5pbJhYcFR5qbLXqBMl8yeDvnlkHe1GeTmU83QePF8tixY8LfqymraXvFQSHl8OEl808If7aYfc/4Ezbm0rlatlcclNVM0v/VlgqKApFVQVFBUWAGFOiS2ikqKArMgAJdUjtFgaD8Ar6m8bmr8ovgAAAAAElFTkSuQmCC" style="font-size: inherit; color: inherit; line-height: inherit; padding: 0px; margin: 0px auto; max-width: 100%; display: inline-block; vertical-align: middle;">) | 取(aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGUAAAAiCAYAAABGIRcbAAAFWElEQVRoQ+1ZWUiVaxRdmpZomlmUSg5FWBb1kkpaWqDiUBqhiA1EUVIgRJhmhgNOKKghomLqgw/6YEY0WFZQBkFKJmiYQT6YAw6UmAMOSRprwzl4btfpaPbfy7/hf/Cc79/T2nvt/R0NZmZmZqCKojJgoIKiKDzEGRUU5WGigqJATFRQVFCUmAEF+qTOFBUUBWZAgS6pnaKCosAMKNAltVNUUBSYAQW6pHaKCooCM6BAl9RO+S+AMjg4iMrKSvz48QOGhoZwc3NDQ0MDRkdHcf78eWzdulXvMH7+/IknT56gq6sL3759Q1BQEBobG/H9+3ccOnQIHh4eeuv+2y92dnbi4cOHmJqawpYtW2Bra4vW1lYw5kuXLsHMzGzRLup0ysTEBB49eoSAgAAYGxsjKytLlLu7u+PWrVtITU3Fvn37RDmNNzc3Y8+ePTA1NV2UwdraWtG3a9cuPH36FM+ePUN0dDTy8/Pls4sXL2J8fBx3797Fly9fYGlpiQsXLsDCwmJR+v/WIRbyy5cvceLECYyNjeHmzZtScObm5rhz5w4yMjJgZ2e3aPd0QGH18tm9e7d0RlJSEk6fPo29e/eit7cXDg4O0j3V1dX48OED+vr6BKgNGzYsaJAg8p39+/cL4OXl5RgZGcHly5fR0dEBGxsbmJiYoKamBk5OTnB0dERZWRnWrl2Ls2fPwsDAYEEbf+sAu4Rib28veUpPT8f169dhZWUleWQhLsX/OWdKW1sbbt++jcTEREnYP4WJLCwslA5aDCiz32c10XFfX18cPXpU+xUp8/79+wgODpbuI7Wxo2JiYgSw+YTVSn8OHz6MI0eO6BwlAxQXF2Pbtm1SzWvWrNF+z2KpqKiQv8+cOSMFsxypq6vDvXv3kJycjPXr1+ulSgcUOkjaIOJsRyZFk5CWlhbs2LFDS1VLBYX/de7u7pb3WT1s6bi4OOk+Vtf09DQ2bdqE7OxsSaqnp6d05KdPn3Dt2rUFk9XT04P4+Hj4+/sjLCxMJxnDw8NISUnBzp07ERERoQMKAcvNzZXztLMQ+P+WZergnNR0N89wjjAmzhUyz9evXyUe6t+8ebPQ/9DQEE6dOvVbbDqgEGUmJS0tTWYLOZ30Qkp7/fo1Tp48qQ1oqaBQR2xsrJZrWU2ZmZlSTQ8ePBAgCAqXCrb7xo0bkZOTg9DQUJlbShbG8uLFC4mP85EMEBgYiPb2dnz+/Bl+fn548+aNzBievXHjBlikeXl5uHr16m9MowMK0S4pKZHkuLq64tWrV5IcKgsJCdHZIOYChY5wQbhy5YrMD42wmqibFOXs7CyVw2fdunU4fvw4tm/frj1Lhx8/fgxra2vxQ8PHPE+gfHx85FlNmc92U1OTFDFz5eLiIhsmKZ90SXCMjIykM96+fSsFzkIjO3CuRkZG/rYo6X1PmQsUtmtCQoJscGxhfYRBTk5Oyjo+e0AyEC4fpImoqCi9qEYff/jOcm2z0EpLS3Hw4EHZYMk8pPPw8HBhn9lxrjgoDIAcTqMc2EsVdtrHjx9lYDOQ+vp6eHt7yxZGYadxQyPoms+WakPf88uxzeWmoKBANkneY4qKiuDl5YWBgQG5o81eMPQChfz4/v17vHv3ThQzgZr7CwNmUklXBw4cWFL8DJoz7fnz59r3zp07J/cXjXCgUz95e7VlObb7+/tRVVUl7EHK5pbJhYcFR5qbLXqBMl8yeDvnlkHe1GeTmU83QePF8tixY8LfqymraXvFQSHl8OEl808If7aYfc/4Ezbm0rlatlcclNVM0v/VlgqKApFVQVFBUWAGFOiS2ikqKArMgAJdUjtFgaD8Ar6m8bmr8ovgAAAAAElFTkSuQmCC" style="font-size: inherit; color: inherit; line-height: inherit; padding: 0px; margin: 0px auto; max-width: 100%; display: inline-block; vertical-align: middle;">) 中的最大值 |
| @smin(aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGUAAAAiCAYAAABGIRcbAAAFWElEQVRoQ+1ZWUiVaxRdmpZomlmUSg5FWBb1kkpaWqDiUBqhiA1EUVIgRJhmhgNOKKghomLqgw/6YEY0WFZQBkFKJmiYQT6YAw6UmAMOSRprwzl4btfpaPbfy7/hf/Cc79/T2nvt/R0NZmZmZqCKojJgoIKiKDzEGRUU5WGigqJATFRQVFCUmAEF+qTOFBUUBWZAgS6pnaKCosAMKNAltVNUUBSYAQW6pHaKCooCM6BAl9RO+S+AMjg4iMrKSvz48QOGhoZwc3NDQ0MDRkdHcf78eWzdulXvMH7+/IknT56gq6sL3759Q1BQEBobG/H9+3ccOnQIHh4eeuv+2y92dnbi4cOHmJqawpYtW2Bra4vW1lYw5kuXLsHMzGzRLup0ysTEBB49eoSAgAAYGxsjKytLlLu7u+PWrVtITU3Fvn37RDmNNzc3Y8+ePTA1NV2UwdraWtG3a9cuPH36FM+ePUN0dDTy8/Pls4sXL2J8fBx3797Fly9fYGlpiQsXLsDCwmJR+v/WIRbyy5cvceLECYyNjeHmzZtScObm5rhz5w4yMjJgZ2e3aPd0QGH18tm9e7d0RlJSEk6fPo29e/eit7cXDg4O0j3V1dX48OED+vr6BKgNGzYsaJAg8p39+/cL4OXl5RgZGcHly5fR0dEBGxsbmJiYoKamBk5OTnB0dERZWRnWrl2Ls2fPwsDAYEEbf+sAu4Rib28veUpPT8f169dhZWUleWQhLsX/OWdKW1sbbt++jcTEREnYP4WJLCwslA5aDCiz32c10XFfX18cPXpU+xUp8/79+wgODpbuI7Wxo2JiYgSw+YTVSn8OHz6MI0eO6BwlAxQXF2Pbtm1SzWvWrNF+z2KpqKiQv8+cOSMFsxypq6vDvXv3kJycjPXr1+ulSgcUOkjaIOJsRyZFk5CWlhbs2LFDS1VLBYX/de7u7pb3WT1s6bi4OOk+Vtf09DQ2bdqE7OxsSaqnp6d05KdPn3Dt2rUFk9XT04P4+Hj4+/sjLCxMJxnDw8NISUnBzp07ERERoQMKAcvNzZXztLMQ+P+WZergnNR0N89wjjAmzhUyz9evXyUe6t+8ebPQ/9DQEE6dOvVbbDqgEGUmJS0tTWYLOZ30Qkp7/fo1Tp48qQ1oqaBQR2xsrJZrWU2ZmZlSTQ8ePBAgCAqXCrb7xo0bkZOTg9DQUJlbShbG8uLFC4mP85EMEBgYiPb2dnz+/Bl+fn548+aNzBievXHjBlikeXl5uHr16m9MowMK0S4pKZHkuLq64tWrV5IcKgsJCdHZIOYChY5wQbhy5YrMD42wmqibFOXs7CyVw2fdunU4fvw4tm/frj1Lhx8/fgxra2vxQ8PHPE+gfHx85FlNmc92U1OTFDFz5eLiIhsmKZ90SXCMjIykM96+fSsFzkIjO3CuRkZG/rYo6X1PmQsUtmtCQoJscGxhfYRBTk5Oyjo+e0AyEC4fpImoqCi9qEYff/jOcm2z0EpLS3Hw4EHZYMk8pPPw8HBhn9lxrjgoDIAcTqMc2EsVdtrHjx9lYDOQ+vp6eHt7yxZGYadxQyPoms+WakPf88uxzeWmoKBANkneY4qKiuDl5YWBgQG5o81eMPQChfz4/v17vHv3ThQzgZr7CwNmUklXBw4cWFL8DJoz7fnz59r3zp07J/cXjXCgUz95e7VlObb7+/tRVVUl7EHK5pbJhYcFR5qbLXqBMl8yeDvnlkHe1GeTmU83QePF8tixY8LfqymraXvFQSHl8OEl808If7aYfc/4Ezbm0rlatlcclNVM0v/VlgqKApFVQVFBUWAGFOiS2ikqKArMgAJdUjtFgaD8Ar6m8bmr8ovgAAAAAElFTkSuQmCC" style="font-size: inherit; color: inherit; line-height: inherit; padding: 0px; margin: 0px auto; max-width: 100%; display: inline-block; vertical-align: middle;">) | 取(aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGUAAAAiCAYAAABGIRcbAAAFWElEQVRoQ+1ZWUiVaxRdmpZomlmUSg5FWBb1kkpaWqDiUBqhiA1EUVIgRJhmhgNOKKghomLqgw/6YEY0WFZQBkFKJmiYQT6YAw6UmAMOSRprwzl4btfpaPbfy7/hf/Cc79/T2nvt/R0NZmZmZqCKojJgoIKiKDzEGRUU5WGigqJATFRQVFCUmAEF+qTOFBUUBWZAgS6pnaKCosAMKNAltVNUUBSYAQW6pHaKCooCM6BAl9RO+S+AMjg4iMrKSvz48QOGhoZwc3NDQ0MDRkdHcf78eWzdulXvMH7+/IknT56gq6sL3759Q1BQEBobG/H9+3ccOnQIHh4eeuv+2y92dnbi4cOHmJqawpYtW2Bra4vW1lYw5kuXLsHMzGzRLup0ysTEBB49eoSAgAAYGxsjKytLlLu7u+PWrVtITU3Fvn37RDmNNzc3Y8+ePTA1NV2UwdraWtG3a9cuPH36FM+ePUN0dDTy8/Pls4sXL2J8fBx3797Fly9fYGlpiQsXLsDCwmJR+v/WIRbyy5cvceLECYyNjeHmzZtScObm5rhz5w4yMjJgZ2e3aPd0QGH18tm9e7d0RlJSEk6fPo29e/eit7cXDg4O0j3V1dX48OED+vr6BKgNGzYsaJAg8p39+/cL4OXl5RgZGcHly5fR0dEBGxsbmJiYoKamBk5OTnB0dERZWRnWrl2Ls2fPwsDAYEEbf+sAu4Rib28veUpPT8f169dhZWUleWQhLsX/OWdKW1sbbt++jcTEREnYP4WJLCwslA5aDCiz32c10XFfX18cPXpU+xUp8/79+wgODpbuI7Wxo2JiYgSw+YTVSn8OHz6MI0eO6BwlAxQXF2Pbtm1SzWvWrNF+z2KpqKiQv8+cOSMFsxypq6vDvXv3kJycjPXr1+ulSgcUOkjaIOJsRyZFk5CWlhbs2LFDS1VLBYX/de7u7pb3WT1s6bi4OOk+Vtf09DQ2bdqE7OxsSaqnp6d05KdPn3Dt2rUFk9XT04P4+Hj4+/sjLCxMJxnDw8NISUnBzp07ERERoQMKAcvNzZXztLMQ+P+WZergnNR0N89wjjAmzhUyz9evXyUe6t+8ebPQ/9DQEE6dOvVbbDqgEGUmJS0tTWYLOZ30Qkp7/fo1Tp48qQ1oqaBQR2xsrJZrWU2ZmZlSTQ8ePBAgCAqXCrb7xo0bkZOTg9DQUJlbShbG8uLFC4mP85EMEBgYiPb2dnz+/Bl+fn548+aNzBievXHjBlikeXl5uHr16m9MowMK0S4pKZHkuLq64tWrV5IcKgsJCdHZIOYChY5wQbhy5YrMD42wmqibFOXs7CyVw2fdunU4fvw4tm/frj1Lhx8/fgxra2vxQ8PHPE+gfHx85FlNmc92U1OTFDFz5eLiIhsmKZ90SXCMjIykM96+fSsFzkIjO3CuRkZG/rYo6X1PmQsUtmtCQoJscGxhfYRBTk5Oyjo+e0AyEC4fpImoqCi9qEYff/jOcm2z0EpLS3Hw4EHZYMk8pPPw8HBhn9lxrjgoDIAcTqMc2EsVdtrHjx9lYDOQ+vp6eHt7yxZGYadxQyPoms+WakPf88uxzeWmoKBANkneY4qKiuDl5YWBgQG5o81eMPQChfz4/v17vHv3ThQzgZr7CwNmUklXBw4cWFL8DJoz7fnz59r3zp07J/cXjXCgUz95e7VlObb7+/tRVVUl7EHK5pbJhYcFR5qbLXqBMl8yeDvnlkHe1GeTmU83QePF8tixY8LfqymraXvFQSHl8OEl808If7aYfc/4Ezbm0rlatlcclNVM0v/VlgqKApFVQVFBUWAGFOiS2ikqKArMgAJdUjtFgaD8Ar6m8bmr8ovgAAAAAElFTkSuQmCC" style="font-size: inherit; color: inherit; line-height: inherit; padding: 0px; margin: 0px auto; max-width: 100%; display: inline-block; vertical-align: middle;">) 中的最小值 |
2.2 集循环函数
集循环函数用于遍历整个集,其基本语法如下:
@function(setname[(set_index_list)[|conditional_qualifier]]:
expression_list);
@function相应于下面罗列的四个集循环函数之一;setname是要遍历的集;set_ index_list是集索引列表;conditional_qualifier是用来限制集循环函数的范围,当集循环函数遍历集的每个成员时,LINGO都要对conditional_qualifier进行评价,若结果为真,则对该成员执行@function操作,否则跳过,继续执行下一次循环。expression_list是被应用到每个集成员的表达式列表,当用的是@for函数时,expression_list可以包含多个表达式,其间用逗号隔开。这些表达式将被作为约束加到模型中。当使用其余的三个集循环函数时,expression_list只能有一个表达式。如果省略set_index_list,那么在expression_list中引用的所有属性的类型都是setname集。
2.2.1 @for
@for函数用来对集中的成员形成约束。
例:产生序列[1,4,9,16,25]
sets:
nums/1..5/: x;
endsets
@for(nums(i): x(i)=i^2);

2.2.2 @sum
@sum函数返回遍历指定集成员的一个表达式的和
例:求[1,2,3,4,5,6,7]中前五个数的和
sets:
nums/1..7/: x;
endsets
@for(nums(i): x(i)=i);
s = @sum(nums(i) | i #le# 5: x(i));

2.2.3 @max,@min
这两个函数分别用于返回指定集成员的一个表达式的最大值和最小值
例:求[1,2,3,4,5,6,7,8,9,10]中前五个数的最大值,后五个数的最小值
sets:
nums/1..10/: x;
endsets
@for(nums(i): x(i)=i);
min_value = @max(nums(i) | i #le# 5: x);
max_value = @min(nums(i) | i #ge# 6: x);

2.2.4 变量界定函数
该函数主要是对决策变量做附加限制,一般用于@for函数中,主要有如下四种:
| 函数 | 说明 |
|---|---|
| @bin(x) | 限制x为0或1 |
| @bnd(a,x,b) | 限制x取a到b之间的值 |
| @free(x) | x取实数 |
| @gin(x) | x取整数 |
2.2.5 说明
Lingo中还有其他大量的函数,比如金融函数、概率函数、变量界定函数,由于目前博主占时用不上,所以就暂且不记录了,待需要时再做进一步更新。
三、待更新
Lingo基本操作的更多相关文章
- Lingo解决最优化问题
目录 Lingo解决优化问题 前言 一.优化模型介绍 二.运输问题 2.1 问题描述 2.2 问题分析 2.2 优化模型构建 2.3 模型求解 2.4 求解结果 三.待更新 Lingo解决优化问题 @ ...
- Key/Value之王Memcached初探:二、Memcached在.Net中的基本操作
一.Memcached ClientLib For .Net 首先,不得不说,许多语言都实现了连接Memcached的客户端,其中以Perl.PHP为主. 仅仅memcached网站上列出的语言就有: ...
- Android Notification 详解(一)——基本操作
Android Notification 详解(一)--基本操作 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 源码:AndroidDemo/Notification 文中如有纰 ...
- Android Notification 详解——基本操作
Android Notification 详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 前几天项目中有用到 Android 通知相关的内容,索性把 Android Notificatio ...
- 三、Redis基本操作——List
小喵的唠叨话:前面我们介绍了Redis的string的数据结构的原理和操作.当时我们提到Redis的键值对不仅仅是字符串.而这次我们就要介绍Redis的第二个数据结构了,List(链表).由于List ...
- 二、Redis基本操作——String(实战篇)
小喵万万没想到,上一篇博客,居然已经被阅读600次了!!!让小喵感觉压力颇大.万一有写错的地方,岂不是会误导很多筒子们.所以,恳请大家,如果看到小喵的博客有什么不对的地方,请尽快指正!谢谢! 小喵的唠 ...
- 一、Redis基本操作——String(原理篇)
小喵的唠叨话:最近京东图书大减价,小喵手痒了就买了本<Redis设计与实现>[1]来看看.这里权当小喵看书的笔记啦.这一系列的模式,主要是先介绍Redis的实现原理(可能很大一部分会直接照 ...
- Linq查询基本操作
摘要:本文介绍Linq查询基本操作(查询关键字) - from 子句 - where 子句 - select子句 - group 子句 - into 子句 - orderby 子句 - join 子句 ...
- C++ map的基本操作和使用
原文地址:http://blog.sina.com.cn/s/blog_61533c9b0100fa7w.html Map是c++的一个标准容器,她提供了很好一对一的关系,在一些程序中建立一个map可 ...
随机推荐
- C++ 的编译过程
Recall that g++ is not actually the C++ compiler – it is a driver program that hides a lot of the co ...
- python 爬虫网络图片中遇到的问题总结
1.只导入了import urllib,读取网页的时候page =urllib.urlopen(url),提示 “module’ object has no attribute ’urlopen’”, ...
- SqlParameter.Value = NULL 引发的数据库异常
摘自:http://www.cnblogs.com/ccweb/p/3403492.html using (SqlCommand cmd = new SqlCommand()) { cmd.Conne ...
- easyui学习笔记11—tab标签页和鼠标动作
这篇我们看看标签页是怎么实现的,默认情况下要靠点击切换标签,也可以用鼠标切换标签选项,就是鼠标放在标签上切换. 首先看看引用的资源文件 1.资源文件 <head> <meta cha ...
- 040同步条件event
条件同步和条件变量同步差不多意思,只是少了锁功能,因为条件同步设计于不访问共享资源的条件环境,event=threading.Event():条件环境对象,初始值为False.event.isSet( ...
- [转]java中的Static class
转自:http://www.cnblogs.com/kissazi2/p/3971065.html Java中的类可以是static吗?答案是可以.在java中我们可以有静态实例变量.静态方法.静态块 ...
- luogu P1522 Cow Tours
嘟嘟嘟 题面挺绕的,“翻译”一下: 1.牧区是一个点,牧场是所有直接相连的点构成的联通块. 2.两个牧区之间的距离是这两个距离之间的最短路,只有直接相连的两个牧区之间的距离是欧几里得距离. 3.牧场的 ...
- PHP 判断常量,变量和函数是否存在
判断变量是否被定义:defined() if (defined('CONST_NAME')) { //do something } 判断变量是否存在:isset() ,注意变量未声明或声明时赋值为NU ...
- SQL 关联两个表的视图总结
视图就是一条select查询语句,是一张虚拟表. table a , table b 以表a基表(a LEFT JOIN b) 1.1 当update view时 更新view中表b字段并且表b ...
- 一段markdown编辑器代码研究
一段markdown编辑器代码研究 说明 代码在 https://github.com/dukeofharen/markdown-editor 之所以选择这个来分析是一方面是因为它的代码结构比较简单, ...